为什么这里stage.stageWidth不能用呢?
在ActionScript3的文档类的构造函数里面有一句这样的语句。
- Java code
paintBmpData = new BitmapData(stage.stageWidth,stage.stageHeight,true,0x0FFFFFF);paintBmp = new Bitmap(paintBmpData,'auto',true);
但是在执行的时候却出现了下面的错误。
- Assembly code
TypeError: Error #1009: Cannot access a property or method of a null object reference. at MTTestMC/Init() at MTTestMC() at MTTest()
如果把上面的代码stage.stageWidth和stage.stageHeight换成具体的数字就正常了。
- Java code
paintBmpData = new BitmapData(800,600,true,0x0FFFFFF);
请问为什么呢?
[解决办法]
因为你的执行脚本的时候,stage还没有构造。
最有效的办法是加入enterFrame监听,执行后再移除这个监听。把有关stage的代码卸载方法里。
还有一种方法,不过并不推荐。setTimeOut(1,方法);延时1毫秒后执行。