【问题标题】:Why can't I get access to an external class in actionscript 3?为什么我无法访问 actionscript 3 中的外部类?
【发布时间】:2013-01-26 05:05:39
【问题描述】:

我正在 adobe flash 中开发一款突破性游戏。我定义了一个文档类 BreakOut.as,并将其设置为 .fla 文件。我编写了另一个类 Player.as,但我无法在 BreakOut.as 中访问 Player.as。代码如下:

BreakOut.as:

package 
{
import flash.display.MovieClip;
import flash.display.Sprite;
public class BreakOut extends MovieClip
{
    public function BreakOut()
    {
        var background:Background;
        background= new Background();
        addChild(background);

        var playerone:Player;
        playerone=new Player();
        playerone.x=50;
        playerone.y=50;
        addChild(playerone);
    }
}

}

播放器.as:

package 
{
import flash.display.MovieClip;

public class Player extends MovieClip
{
    public function Player()
    {

        player.graphics.beginFill(0x000000);
        player.graphics.drawRect(0,0,20,100);

    }
}

}

Adobe flash 一直告诉我:未定义属性 Player 的访问。嗯,Background.as 是另一个类,我可以毫无问题地访问它。但它在 Player.as 上不起作用。

【问题讨论】:

  • 嗯,一切似乎都很好(请注意,我已经有几年没有做过 AS3 了)。 Player.as 是否与 BreakOut.as 位于同一目录中?哦——还有一件事:Player.as 中的player 是什么?是 Flash 报告错误的位置吗?
  • @Cameron 没错! Player.as 中的播放器导致了整个问题。 loxxy 给了我正确的方法。另外,感谢您的回答。

标签: actionscript-3 flash


【解决方案1】:
    player.graphics.beginFill(0x000000);
    player.graphics.drawRect(0,0,20,100);

这样,如果你试图通过绘制一个矩形来初始化Player,你应该使用this

    this.graphics.beginFill(0x000000);
    this.graphics.drawRect(0,0,20,100);

请注意,Player.as 也应该与 fla 的类路径位于同一路径中。

【讨论】:

  • 非常感谢!!!现在一切正常。这些问题一直困扰着我一整天,我终于可以继续游戏的其余部分了。再次感谢您的帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-26
  • 1970-01-01
  • 2022-01-08
  • 2015-12-07
  • 2015-03-12
  • 1970-01-01
相关资源
最近更新 更多