版权声明:就是码字也不容易啊 https://blog.csdn.net/qq_40946921/article/details/84670269
单个按键:
常量 |
按键 |
DIGIT0-DIGIT9 |
主键盘0-9 |
NUMPAD0-NUMPAD9 |
小键盘0-9 |
A-Z |
字母键A-Z |
ENTER |
回车键 |
BACK_SPACE |
←退格 |
INSERT |
Ins键 |
HOME |
Home键 |
DELETE |
DEL键 |
END |
END键 |
UP、DOWN、LEFT、RIGHT |
上下左右箭头 |
ESCAPE |
Esc键 |
BACK_QUOTE |
`键 |
TAB |
Tab键 |
CAPS |
CAPSLK键 |
SHIFT |
Shift键 |
NUM_LOCK |
NUM(小键盘锁) |
CONTROL |
CTRL按键 |
WINDOWS |
Win(图标) |
ALT |
ALT键 |
ALT_GRAPH |
右ALT键 |
ADD |
+ |
SUBTRACT |
- |
MULTIPLY |
* |
DEVIDE |
/(小键盘) |
SLASH |
/ or 、(主键盘) |
EQUALS |
= |
OPEN_BRACKET |
[ |
CLOSE_BRACKET |
] |
SEMICOLON |
;(分号) |
QUOTE |
‘(单引号) |
BACK_SLASH |
\ |
COMMA |
,(逗号) |
PERIOD |
.(点、句号) |
组合按键实现:
设置一个boolean变量,当组合键被按下时,设为true,松开时设为false
例如左括号“(”,其实是shift+9(SHIFT+DIGHT9),只需借用一个shift的boolean变量就可实现。
boolean shift=false;
public void start(Stage root){
Pane pane=new Pane();
Scene scene=new Scene(pane,200,200);
scene.setOnKeyPressed(e->{
if(e.getCode()== KeyCode.SHIFT)
shift=true;
if(shift&&e.getCode()==KeyCode.DIGIT9)
System.out.println("yes!");
});
scene.setOnKeyReleased(e->{
if(e.getCode()==KeyCode.SHIFT)
shift=false;
});
root.setScene(scene);
root.show();
}