如何将“i”放入Actionscript 3中的循环中

时间:2016-01-11 23:30:40

标签: actionscript-3 flash actionscript

我正在尝试循环一堆按钮,如下所示。我理解循环是如何工作的,但我不知道如何将下面的数字更改为'我在循环中,如果它是这样的:

2016-01-11 17:26:52 551 [ERROR] InnoDB: Unable to lock ./ibdata1,    
error: 35
2016-01-11 17:26:52 551 [Note] InnoDB: Check that you do not already have another mysqld process using the same InnoDB data or log files.

任何帮助将不胜感激!谢谢!

for (var i:Number=1; i<=10;i++){ }

2 个答案:

答案 0 :(得分:1)

要直接回答这个问题,你可以这样做:

for (var i:int = 1; i <= 10; i++) {
    this['eyes' + i].addEventListener(MouseEvent.CLICK, function(event:MouseEvent):void {
        eyes.gotoAndStop(i);
    });
}

然而,这是一个糟糕的主意。最好分配一个变量,例如对每个按钮tf使用它,而使用一个更通用的处理程序。例如:

eyes1.tf = 1;
eyes2.tf = 2; // etc

然后:

function handleClick(event:MouseEvent):void {
    var frame:int = event.target.tf;
    eyes.gotoAndStop(frame);
}

显然:

eyes1.addEventListener(MouseEvent.CLICK, handleClick); // etc

答案 1 :(得分:0)

您可以扩展SimpleButton,然后添加属性。像这样创建的听众的功能永远不会删除。