Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
数字键盘可以生成什么Java KeyEvent?_Java_Keyevent - Fatal编程技术网

数字键盘可以生成什么Java KeyEvent?

数字键盘可以生成什么Java KeyEvent?,java,keyevent,Java,Keyevent,在swing程序中,我尝试使用键绑定从键盘上的数字键盘键接收输入 myPanel.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_NUMPAD8, 0), “numpad8”); myPanel.getActionMap().put(“numpad8”, numPad8); 如果我启用了num lock,效果很好,这与预期的一样,但是如果我添加: myPanel.getInputMap().put(KeyStroke.getKeyStr

在swing程序中,我尝试使用键绑定从键盘上的数字键盘键接收输入

myPanel.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_NUMPAD8, 0), “numpad8”);
myPanel.getActionMap().put(“numpad8”, numPad8);
如果我启用了num lock,效果很好,这与预期的一样,但是如果我添加:

myPanel.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_KP_UP, 0), “numpad8”);
如果不启用num lock,我的键盘不会导致调用numPad8操作(实际上它似乎会生成KeyEvent.VK_UP)。这让我感到惊讶,因为KeyEvent的文档指定KeyEvent.VK_UP是

非numpad向上箭头键的常量

和KeyEvent.VK_KP_UP

数字键盘向上箭头键的常数

所以我的问题是:如果我想让我的代码支持尽可能多的键盘设置,我应该从num pad中获得什么样的keypevents?例如,为了安全起见,我是否应该将KeyEvent.VK_8添加到上述内容中