在Flex 4中添加具有功能的按钮;点击?

时间:2011-03-24 21:29:56

标签: flex button components

我正在尝试从像这样的函数中向Flex 4应用程序中的组添加按钮;

public function addButton(myID:Number):void {
    var myButton:Button = new Button();
    myButton.id = ObjectUtil.toString(myID);
    myButton.label = "New Button "+myButton.id;
    myButton.click= textAlerter(myID);      
    myGroup3.addElement(myButton);
}

添加标签和ID属性,但不添加点击。 错误消息说click是spark.components:Button的未定义属性。 但是当它像这样添加到组中时它是一个属性;

我做错了什么?

1 个答案:

答案 0 :(得分:3)

在MXML中,click不是属性,它是事件监听器的快捷方式。

public function addButton(myID:Number):void {
    var myButton:Button = new Button();
    myButton.id = myID.toString();
    myButton.label = "New Button "+myButton.id;
    myButton.addEventListener(MouseEvent.CLICK, textAlerter);
    myGroup3.addElement(myButton);
}

private function textAlerter(e:Event):void 
{
    var myID:String = (e.currentTarget as Button).id;
    //your code here
}