Flex中双击事件MouseEvent.DOUBLE_CLICK不起作用的解决办法

编程时,突然发现双击事件不好用,没有任何反应。

发现加上如下两行代码时,才能有效:

imageParkingLot.doubleClickEnabled = true;
imageParkingLot.mouseChildren = false;



oubleClickEnabled = true;
mouseChildren = false;//注意这个很重要,默认值为true。当在Sprite上添加了子项时,可能导致该Sprite上的鼠标事件出现意外行为
addEventListener(MouseEvent.DOUBLE_CLICK, doubleclickHandler);
 
API原文如下:
mouseChildren:
语言版本: ActionScript 3.0运行时版本: Flash Player 9, AIR 1.0
确定对象的子项是否支持鼠标。如果对象支持鼠标,则用户可以使用鼠标与其交互。默认值为 true。
当您使用 Sprite 类的实例(而不是使用 SimpleButton 类)来创建按钮时,此属性很有用。当您使用 Sprite 实例来创建按钮时,可以选择使用 addChild() 方法添加其他 Sprite 实例来修饰该按钮。此过程可能导致鼠标事件出现意外行为,因为当您期望父实例成为鼠标事件的目标对象时,作为子项添加的 Sprite 实例却可能成为目标对象。要确保父实例用作鼠标事件的目标对象,您可以将父实例的 mouseChildren 属性设置为 false。
设置此属性不会分派任何事件。您必须使用 addEventListener() 方法才能创建交互式功能。

你可能感兴趣的:(Flex中双击事件MouseEvent.DOUBLE_CLICK不起作用的解决办法)