【发布时间】:2012-08-31 20:22:40
【问题描述】:
我想模拟在 JTextField 中输入一个字符串(可以包含任何字符)。我正在为此使用 new KeyEventData() 。但我无法确定如何处理 {、}、) 等字符,以及如何将新字符附加到已输入的字符。
【问题讨论】:
标签: java swing jtextfield awtrobot
我想模拟在 JTextField 中输入一个字符串(可以包含任何字符)。我正在为此使用 new KeyEventData() 。但我无法确定如何处理 {、}、) 等字符,以及如何将新字符附加到已输入的字符。
【问题讨论】:
标签: java swing jtextfield awtrobot
【讨论】:
KeyEvent 实例是低级别事件。
VK_PLUS 没有移位,而 shift-VK_EQUALS 产生一个加号。
这可能有助于模拟关键事件:How to simulate keyboard presses in java?
对于左右大括号,KeyEvent.VK_BRACELEFT 和 KeyEvent.VK_BRACERIGHT http://docs.oracle.com/javase/7/docs/api/java/awt/event/KeyEvent.html#VK_BRACELEFT
希望这会有所帮助 =]
【讨论】:
检查 VK_BRACELEFT、VK_BRACERIGHT、VK_RIGHT_PARENTHESIS 和 VK_LEFT_PARENTHESIS 以处理这些字符。
对于附加字符,您可能会假设构建字符列表或构建字符串。
编辑:要从 keyevent 中获取字符值,请尝试 KeyEvent.getKeyChar()
【讨论】: