0

我有这个代码:

<j:TextInput localId="ti_pass"  >
    <j:beads><j:PasswordInput/></j:beads>
</j:TextInput>

不幸的是,看着https://apache.github.io/royale-docs/component-sets/jewel/textinput我没有找到 KeyDown 事件的珠子。是否有特定的事件来监听它?

有没有办法知道是否按下了输入键?

感谢和问候

4

2 回答 2

1

我必须说你的问题有更好的解决方案,但由于专注于 keydown,我完全忘记了。对不起。

enter在 TextInput 中有一个可以直接使用的事件。示例在 TextInputPlayGround 的 Tour De Jewel 中。

private function enterPress(event:Event):void
{
    trace("enter pressed");
}
<j:TextInput text="A TextInput" enter="enterPress(event)"/>

高温高压

卡洛斯

于 2020-05-28T11:08:06.663 回答
0

您需要KeyboardEvent.KEY_DOWN在链上收听(TextInput)。

如果你在 MXML 中,首先initComplete在周围的容器中添加一个监听器listenKeyDown

initComplete="listenKeyDown()"

然后在脚本部分添加:

public function listenKeyDown():void {
    the_textinput.addEventListener(KeyboardEvent.KEY_DOWN, keyDownEventHandler)
}

protected function keyDownEventHandler(event:KeyboardEvent):void
{
    trace("Any key:", event.key);

    if(event.key === KeyboardEvent.KEYCODE__DOWN)
    {
        trace("Down key:", event.key);
    }
}
于 2020-05-27T23:14:32.277 回答