java如何实现小键盘的监听

frame实现KeyListener的接口,然后在Keypressed的函数中无论如何都监听不到小键盘,只有大键盘有用,VK_PLUS之类的,完全进不去,换成VK_RIGHT就没有问题,求高手解答啊>_<

5个回答

我查了一下资料,也用How to use Key Events in Swing这个也是代码测试了一下,参考类 KeyEvent(英文版的Class KeyEvent)

"Key pressed"和"key released" 事件 是低级别事件,依赖于平台和键盘布局。

在我的笔记本测试中,在中文输入输入法,在数字键盘输入模式,捕捉不到键盘输入事件,但是如果把输入法切换到英文输入的模式,可以正常捕捉到输入的键值。

"Key typed"键入键”事件 是高级别事件,通常不依赖于平台或键盘布局。输入 Unicode 字符时生成此类事件,它们被认为是发现字符输入的最佳方式。

因为数字键盘上的字符都是Unicode字符,所以建议使用public void keyTyped(KeyEvent e)来捕捉输入的是什么。

纠正一下我上次的回答,没有VK_NUMPADPLUS,只有VK_PLUS,主键盘上没有直接的加号,而是SHIFT和=号组合。

你说的是数字键盘吗?KeyEvent.VK_NUMPAD0到KeyEvent.VK_NUMPAD9 这个是小键盘上的数字。

lukasuki
lukasuki 就是用的NUMPAD0-9啊,但是小键盘按了没反应,另外貌似没有NUMPADPLUS,虚拟键码里也没有,我自己的编译器也是报错的。。持续郁闷中
5 年多之前 回复

VK_PLUS对应小键盘的+号是VK_NUMPADPLUS

这是我积累的一些java项目源码 你可以参考参考 不过有点基础
http://download.csdn.net/album/detail/1369
图书http://download.csdn.net/album/detail/1191

http://download.csdn.net/album/detail/1369

你在keylistener 方法中查找,有这样的demo

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐