#2015:无效的BitmapData

时间:2009-12-31 06:48:23

标签: actionscript-3 class bitmap bitmapdata

在我的课堂上,如果我像这样创建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);
}

工作正常。为什么!?!?!这让我疯狂。

谢谢你们!

2 个答案:

答案 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