在我的课堂上,如果我像这样创建bitmapData
:
private var tImage:BitmapData;
public function object():void {
tImage = new BitmapData(30,30,false,0x000000);
}
我收到以下错误:
ArgumentError: Error #2015: Invalid BitmapData.
但是如果我在方法中声明变量:
public function object():void {
var tImage:BitmapData;
tImage = new BitmapData(30,30,false,0x000000);
}
工作正常。为什么!?!?!这让我疯狂。
谢谢你们!
答案 0 :(得分:0)
我认为这可能是你班上的其他一些代码。
以下工作,但我没有命名函数“object”(因为我猜这是一个保留字?)
package
{
/**
* ...
* @author your name here
*/
import flash.display.MovieClip;
import flash.events.Event;
import flash.display.Bitmap;
public class TestBitmap extends MovieClip
{
private var tImage:BitmapData;
public function TestBitmap():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void
{
tImage = new BitmapData(30,30,false,0x000000);
}
}
}
以下简化版本也适用:
package
{
/**
* ...
* @author your name here
*/
import flash.display.MovieClip;
import flash.events.Event;
import flash.display.Bitmap;
public class TestBitmap extends MovieClip
{
private var tImage:BitmapData;
public function TestBitmap():void
{
tImage = new BitmapData(30,30,false,0x000000);
}
}
}
答案 1 :(得分:-1)
您将tImage声明为私有...
private var tImage:BitmapData;
public function object():void {
tImage = new BitmapData(30,30,false,0x000000);
}
它应该是
var tImage:BitmapData;
public function object():void {
tImage = new BitmapData(30,30,false,0x000000);
}
DERP