首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >键盘事件

键盘事件
EN

Stack Overflow用户
提问于 2009-06-18 02:48:17
回答 1查看 323关注 0票数 0

我添加了键盘events....with机器人类的对象来在notepad.....but上写入键值,当我按下“a”a“”时,它将解释为"1",因此on...for所有的键.

当我显示所有键的asci值时,它将打印准确的值,如a-97、b-98等等.

为什么会这样请给出一些解决办法..。

EN

回答 1

Stack Overflow用户

发布于 2009-06-18 02:55:38

Robot.keyPress方法接受一个int密钥代码--而不是一个实际的字符代码。

来自有关keycode的文档

代码语言:javascript
复制
keycode - Key to press (e.g. KeyEvent.VK_A) 

因此,输入以下内容将不起作用:

代码语言:javascript
复制
Robot r = new Robot();
r.keyPress('a');            // Won't work -- it will press an "1"

要正确工作,必须使用KeyEvent中的常量

代码语言:javascript
复制
Robot r = new Robot();
r.keyPress(KeyEvent.VK_A);  // This works -- it will press an "a"

此外,如果要使用从KeyListener的事件(如keyPressedkeyReleased)返回的keyReleased,则KeyEvent对象具有一个getKeyCode方法,该方法将返回事件的keycode

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1010525

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档