闪光 - 无需点击即可获得键盘焦点

时间:2013-07-18 17:12:31

标签: actionscript-3 flash

在一个Actionscript 3程序中,我使用此代码将一个事件监听器添加到TextField:

var tf:TextField = new TextField();
tf.addEventListener(KeyboardEvent.KEY_DOWN, handleText);

只有在我单击TextField时才会调用handleText()。有什么方法可以在鼠标悬停在TextField上时接收键盘事件(无需点击)?

1 个答案:

答案 0 :(得分:1)

TextField有自己的键盘事件侦听器,如果其模式为input,它将用于更改文本。要在目标没有焦点时捕获键盘事件,请将侦听器添加到stage,并检查鼠标是否位于相关文本字段上方。为此,您可以在MOUSE_OVER中设置一个布尔标志,并将其放在附加到文本字段的MOUSE_OUT侦听器中。然后,如果该标志处于启用状态,您可以自己解析键盘事件,也可以通过dispatchEvent()调用现有KeyboardEvent对象将其传输到TextField。