0

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

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

只有当我单击 TextField 时才会调用 handleText()。当鼠标刚刚悬停在 TextField 上(无需单击)时,有没有办法接收键盘事件?

4

1 回答 1

1

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

于 2013-07-18T17:18:47.633 回答