输入vaadin 10文本字段的按下事件

输入vaadin 10文本字段的按下事件,vaadin,vaadin10,vaadin-flow,Vaadin,Vaadin10,Vaadin Flow,是否有任何特定方法可以在Vaadin流中的特定TextField元素上为Enter键添加快捷方式侦听器。文档对此没有说明。我想您实际上不是在寻找“快捷键”,而是在焦点位于字段内时对回车键做出反应?如果是,请参阅KeyNotifier和例如addKeyPressListener 还可以使用元素API监听任何DOM事件,例如 textField.getElement().addEventListener("keyup", e -> { System.out.println("Valu

是否有任何特定方法可以在Vaadin流中的特定TextField元素上为Enter键添加快捷方式侦听器。文档对此没有说明。

我想您实际上不是在寻找“快捷键”,而是在焦点位于字段内时对回车键做出反应?如果是,请参阅KeyNotifier和例如addKeyPressListener

还可以使用元素API监听任何DOM事件,例如

textField.getElement().addEventListener("keyup", e -> { 
    System.out.println("Value is now: " + 
        e.getEventData().getString("element.value"));
}).addEventData("element.value").setFilter("event.keyCode == 13");
在中,有一个用于Vaadin 10的UI Web组件。它叫。用法非常简单:

Shortcut.add(messageField, Key.ENTER, sendButton::click);
您还可以像这样添加修改器关键点:

Shortcut.add(messageField, Key.ENTER, sendButton::click, Key.SHIFT);

我建议通过使用
event.key='Enter'
过滤代码,而不是使用模糊的键代码,从而使代码更具可读性。您是否关心特定的按键,或者检测用户已完成该字段中的数据输入?这是否适用于
TextField
以及按钮?问题不在于按钮。