如何在JFX 2中使用KeyBindings?我需要重新分配 Enter 键从 carrige 返回到我自己的函数,对于 carrige 返回分配 CTRL+ENTER
我已经尝试过这种方式,但它仍然会制作一条新行。
messageArea.addEventFilter(KeyEvent.KEY_PRESSED, new EventHandler<KeyEvent>() {
@Override
public void handle(KeyEvent keyEvent) {
if (keyEvent.getCode() == KeyCode.ENTER) {
sendMessage();
}
}
});
作为宝石海答案的补充。要控制组合键,请使用:
if (event.getCode().equals(KeyCode.ENTER) && event.isControlDown()) { // CTRL + ENTER
messageArea.setText(messageArea.getText() + "n");
}
在您的处理程序中。
如果要阻止要过滤的事件的默认行为,则需要使用它。
KeyEvents有很多种,你可能希望过滤KeyEvent.ANY,而不仅仅是KeyEvent.KEY_PRESSED
并使用它们。