首先,我是初学者。其次,请有人更改标题,因为我想不出更好的标题。
这就是问题所在:
makebtn(0, 150, true, "btnstart");
btntxt(btnstart, "Start");
我做了两个功能,一个makebtn
:makebtn( xpos, ypos, alignMiddle, instance name);
第二个btntxt
::btntxt( target instance, displayed text);
function makebtn(xpos:Number, ypos:Number, alignMiddle:Boolean, newname:String):void
{
var button:MovieClip = new btn();
if(alignMiddle == true){
xpos = stage.stageWidth / 2 - button.width / 2;
}
button.x = xpos;
button.y = ypos;
button.name = newname;
trace("Success adding button - " + button.name);
stage.addChild(button);
button.gotoAndStop(4);
button.useHandCursor = false;
}
function btntxt(button:MovieClip, txt:String):void
{
button.btnText.text = txt;
button.buttonMode = true;
button.useHandCursor = true;
button.addEventListener(MouseEvent.MOUSE_OVER,overListener);
button.addEventListener(MouseEvent.MOUSE_OUT,outListener);
button.addEventListener(MouseEvent.MOUSE_DOWN,clickListener);
button.addEventListener(MouseEvent.MOUSE_UP,upListener);
}
我把我的按钮做成了一个movieclip,而不是一个简单的按钮。
显示的问题是未定义属性的访问权限btnstart
。是时间不足导致问题还是什么?请帮忙!
如果我的信息太短,请告诉我。我相信听众工作正常。
我正在时间轴上创建这些。
好吧,如果我把btntxt(button, "Start");
makebtn 函数放在里面,那就行了。
第二次编辑:
function makebtn(xpos:Number, ypos:Number, alignMiddle:Boolean, newname:String):void
{
var button:MovieClip = new btn();
if(alignMiddle == true){
xpos = stage.stageWidth / 2 - button.width / 2;
}
button.x = xpos;
button.y = ypos;
button.name = newname;
trace("Success adding button - " + button.name);
stage.addChild(button);
button.gotoAndStop(4);
button.useHandCursor = false;
}
function btntxt(target:String, txt:String):void
{
var button;
button = getChildByName(target);
button.getChildByName("btnText").text = txt;
button.buttonMode = true;
button.useHandCursor = true;
button.addEventListener(MouseEvent.MOUSE_OVER,overListener);
button.addEventListener(MouseEvent.MOUSE_OUT,outListener);
button.addEventListener(MouseEvent.MOUSE_DOWN,clickListener);
button.addEventListener(MouseEvent.MOUSE_UP,upListener);
}