2011-03-24 51 views
1

我试图从一个像这样的函数内向Flex 4应用程序中的组添加一个按钮;在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。 但这是一个属性,当它添加到这样的组;

我在做什么错?

回答

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 
} 
相关问题