【问题标题】:JavaFX KeyEvent returns KeyCode.UNDEFINEDJavaFX KeyEvent 返回 KeyCode.UNDEFINED
【发布时间】:2014-01-10 11:30:42
【问题描述】:

我创建了一个简单的 JavaFX 应用程序,它在 TextField 中接收来自用户的输入。我将 SceneBuilder 中的 KeyTyped 事件附加到控制器。我的函数如下所示:

@FXML private void keyTyped(KeyEvent event) {
    System.out.println(event.getCode().equals(KeyCode.ENTER));
}

当我输入回车键时,这个函数总是打印出 UNDEFINED。有想法该怎么解决这个吗?我输入的其他字母似乎也有同样的问题。

【问题讨论】:

    标签: java input javafx javafx-2 keyevent


    【解决方案1】:

    KeyTyped 是一个特殊事件。它没有KeyCode,而是设置了character

    参见字母“a”的示例:

    KeyEvent [source = TextField[id=null, styleClass=text-input text-field], 
    target = TextField[id=null, styleClass=text-input text-field], eventType = KEY_TYPED, consumed = false, 
    character = a, text = , code = UNDEFINED]
    

    和 javadoc:http://docs.oracle.com/javafx/2/api/javafx/scene/input/KeyEvent.html#getCode()

    与此键中的键相关联的键码按下或键 发布的事件。对于键类型事件,代码总是 KeyCode.UNDEFINED。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      • 1970-01-01
      • 1970-01-01
      • 2023-03-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多