如何减少AS3中的按钮点击事件代码

how to reduce button click event code in AS3

我有 1 到 64 个按钮(实例名称)b1 - b64。我需要像这样向每个 buttons.My 当前代码添加鼠标单击事件....

b1.addEventListener(MouseEvent.CLICK, btn1click);
function btn1click(event:MouseEvent)
{
 var e = b1;
}
b2.addEventListener(MouseEvent.CLICK, btn2click);
function btn2click(event:MouseEvent)
{
 var e = b2;
}
b3.addEventListener(MouseEvent.CLICK, btn3click);
function btn3click(event:MouseEvent)
{
 var e = b3;
}
.......

我需要减少重复。

您可以使用循环将事件侦听器附加到按钮:

for (var i:int = 1; i <= 64; i++) {
    this['b' + i].addEventListener(MouseEvent.CLICK, btnClick);
}

并使用单个侦听器函数:

function btnClick(event:MouseEvent):void {
    trace(event.currentTarget + ' was clicked.');
}