【发布时间】:2018-11-04 22:17:24
【问题描述】:
有没有更好的方法来获取这些 ()?:"{}|!@#$%^&* 的键码作为没有这个漫长过程 JavaFX 的方法的字符串
如果是,我首先检查是否按下了 .getCode() 并且如果那个 keyCOde = SLASH 然后使用“?”问号。但这很长
scene.setOnKeyPressed(new EventHandler<KeyEvent>() {
@Override
public void handle(KeyEvent e) {
if(e.isShiftDown()) {
switch (e.getCode()) {
case SLASH:
bot_list.get(0).hit("?");
break;
case LEFT_PARENTHESIS:
bot_list.get(0).hit(",");
break;
case RIGHT_PARENTHESIS:
bot_list.get(0).hit(".");
break;
case QUOTE:
bot_list.get(0).hit("'");
break;
case SEMICOLON:
bot_list.get(0).hit(":");
break;
case BRACELEFT:
bot_list.get(0).hit("{");
break;
case BRACERIGHT:
bot_list.get(0).hit("}");
break;
case OPEN_BRACKET:
bot_list.get(0).hit("[");
break;
case CLOSE_BRACKET:
bot_list.get(0).hit("]");
break;
case BACK_SLASH:
bot_list.get(0).hit("|");
break;
case BACK_QUOTE:
bot_list.get(0).hit("~");
break;
}
}
【问题讨论】:
-
请注意,您的方法仅对某些键盘布局产生正确的结果。在我的(德语 qwertz)键盘上,没有大括号右键,您需要使用
Alt Gr + 7来获得{... -
哦,那里编码难吗?
标签: java javafx controller javafx-8 fxml