for (iss = 0; iss < listOfProductIds2.length; iss++)
{
// Alert.show(listOfProductIds2[iss]);
var productMain:VBox=new VBox();
var p1:HBox=new HBox();
var l1:Label=new Label();
var b1:Button=new Button();
var spacer:Spacer=new Spacer();
spacer.width=300;
b1.label="Remove";
b1.setConstraintValue("id","");
b1.addEventListener(MouseEvent.CLICK,removeProduct);
l1.text="Product "+iss;
p1.setActualSize(500,500);
p1.addChild(l1);
p1.addChild(spacer);
p1.addChild(b1);
productMain.addChild(p1);
}
function removeProduct(event:MouseEvent):void
{
// How do i know which button is clicked
}
0
A
回答
2
使用event.currentTarget
(而不是event.target
),因为event.target可能是Label
组件或按钮中的一些定型组件,但currentTarget
是有保证的是与听众登记的对象。
要获得点击按钮的句柄,您只需将currentTarget
投射到一个按钮即可。
function removeProduct(event:MouseEvent):void
{
var b1:Button = Button(event.currentTarget);
}
方法setConstraintValue
是用于设定布局约束,不设置ID。 id
属性由mxml用于为对象创建变量名称。您可以设置/设置id
,因为您可以设置任何其他属性(例如宽度) - 但我没有看到任何人这样做,也没有看到有任何需要这样做的地方。
0
event.target应该指向你点击的按钮,不是吗?但是,您应该可以为按钮设置ID以区分它们(因为您可以动态创建它们)。
+0
确定没问题..但是我怎么知道你点击了哪个ID – 2009-12-10 11:10:51
0
看看event.target
。
0
如果ID是动态分配的,如给出的例子b1.id = "button_" + listOfProductIds2[iss]
然后处理click事件的函数将查看当前目标,我通常做的是在你知道的id部分做一个字符串替换不像"button_"
和""
那样动态,这会给您留下产品的名称。
相关问题
- 1. 如何知道在ListView中单击了哪个按钮
- 2. 如何知道在alertdialog中单击确定按钮时单击哪个单选按钮?
- 3. 在WebView中,如何知道哪个按钮被点击?
- 4. 如何知道winform c#中点击了哪个按钮?
- 5. 如何知道Flex DataGrid itemRenderer中的按钮何时被点击?
- 6. 知道在哪个单元格中选择了哪个按钮
- 7. 我如何知道UItableview中单元格按钮的点击
- 8. Android的 - 按钮侦听知道哪个按钮被点击
- 9. 如何知道点击了哪个按钮
- 10. 如何知道点击了哪个按钮?
- 11. 如何知道在Node.js中按下了哪个'Submit'按钮
- 12. GridView中的按钮:我如何知道哪个项目?
- 13. 知道在Android中点击了哪个按钮
- 14. Flex - 确定在对话框中单击了哪个按钮
- 15. 如何知道在C中单击按钮的时间#
- 16. 如何知道选择了哪个单选按钮?
- 17. 如何知道在列表上下文中点击了哪个jQuery按钮
- 18. Android:如何知道在“onActivityResult”方法中点击了哪个按钮
- 19. 如何知道在C#中单击了哪个对象?
- 20. 我如何知道哪个菜单项被点击?
- 21. 我如何知道在ui中点击哪个元素:重复?
- 22. 如何知道按钮在form1中被点击但是在form2中知道C#
- 23. 我怎样才能知道哪些提交按钮被点击
- 24. 使事件的多个按钮,并知道被点击了哪个按钮
- 25. ActionListener如何知道按下了哪个按钮?
- 26. Xamarin Grid如何知道哪个按钮被按下
- 27. 如何知道哪个按钮被按下?
- 28. 知道在Javascript中按下哪个按钮
- 29. 如何知道引导程序中点击哪个菜单项
- 30. 如何检测在javascript中单击了哪个按钮?
感谢有关currentTarget的信息。 在这种情况下,设置id可能很有趣,因为按钮是动态创建的,例如: b1.id =“button_”+ listOfProductIds2 [iss]; ..然后你可以检查按钮的ID,看看哪一个被点击。 (虽然这不是很干净,因为它将id和业务相关的信息混合在一起)。 我想这里的问题是要知道对应于按钮的productId。很多方法可以做到这一点......一个ProductButton类可以有一个产品ID作为公共,知道属性......或产品ID和按钮之间的一些映射? – phtrivier 2009-12-10 13:29:12