在Flex 3中,按钮在鼠标单击时调用其单击处理程序,或者当它们具有焦点并且用户按下空格键时.
当用户按下回车键时,是否有一种直接的方法可以使具有焦点的Flex 3按钮调用其单击处理程序?
当然,你可以这样做:
<mx:Script>
<![CDATA[
import mx.controls.Alert;
private function btn_click(event:MouseEvent):void
{
Alert.show("Clicked!");
}
private function btn_keyDown(event:KeyboardEvent):void
{
if (event.keyCode == Keyboard.ENTER)
btn.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
}
]]>
</mx:Script>
<mx:Button id="btn" label="Click Me" click="btn_click(event)" keyDown="btn_keyDown(event)" />
Run Code Online (Sandbox Code Playgroud)
...虽然我不喜欢在这些对象之外的对象上调度事件.更简洁的方法可能是将Button子类化,在子类中添加侦听器和处理程序,然后从该类中调度click事件.但这应该有助于说明这一点.祝好运!
| 归档时间: |
|
| 查看次数: |
10162 次 |
| 最近记录: |