我有点困惑为什么这不是默认行为?
那么,如何检测按钮上按下的回车键并触发 click 事件处理程序?(例如,在 TextInput 字段中有一个“输入”事件)
谢谢
我有点困惑为什么这不是默认行为?
那么,如何检测按钮上按下的回车键并触发 click 事件处理程序?(例如,在 TextInput 字段中有一个“输入”事件)
谢谢
编辑:回滚到原始帖子,只有在选择按钮时才会触发事件
当用户将焦点放在按钮上时会触发 enter 事件,并且与键盘 enter 键无关。如果我没记错的话,在 Flash 中激活按钮的默认键是空格键。您可以通过执行以下操作来使用 enter:
myButton.addEventListener(KeyboardEvent.KEY_DOWN, onMyButtonKeyDown);
private function onMyButtonKeyDown(event:KeyboardEvent):void
{
//simulate click if enter pressed
if(event.keyCode == Keyboard.ENTER)
myButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
}
编辑:忽略我之前发布的所有内容。
您可以在火花按钮上使用 keyDown 事件并使用 KeyboardEvent 创建事件处理程序。
<s:Button label="Submit" keyDown="enter_pressed(event)" id="submit" click="submit_clickHandler(event)"/>
protected function enter_pressed(event:KeyboardEvent):void {
if(event.charCode == Keyboard.ENTER){
submit.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
}
}