总而言之,您可以在代码中创建按钮,或者您可以尝试侦听来自您将子对象添加到的父对象(可能是舞台,也可能是另一个 DisplayObjectContainer)的添加到舞台事件。监听方法的问题是我不确定你如何知道哪个孩子刚刚分派了事件而不编写一些混乱的代码。我认为第一个选项通常更容易并且更有意义,唯一需要注意的是,您必须使用 x/y 坐标放置实例或应用 scaleX、scaleY 来拉伸或收缩对象,而不是使用创作工具进行。您仍然可以使用 Flash 的拖放部分来计算坐标并构建单个影片剪辑等。
足够多的讨论一些代码:
package
{
import flash.display.MovieClip;
public class GameButton extends MovieClip {
private var blabel:TextField; //This can be any display object class or a class that extends from a display object class (Sprite, MovieClip, MyCustomButton etc.)
public function GameButton() {
blabel = new TextField(); //The type after new, should be the same, or a sub-class (extension) of the type used in the variable declaration above
addChild(blabel);
//blabel.x=10; //optional over ten pixels from left
//blabel.y=10; //optional down ten pixels from top
//blabel.scaleX=.5; //optional half the width
//blabel.scaleY=2; //optional 2 times taller
trace("Gamebutton has been created");
blabel.text = "Click";
stop();
}
}
}