Skip to Main Content

Java SE (Java Platform, Standard Edition)

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Invalid key code

4066777Aug 19 2019 — edited Oct 5 2019

***Moderator action (Timo): User this is an English language forum. Ask your question in English language, please!***

Translaton via Goggle:

A very simple program, Windows system, Java8 starts the following program in the German environment, always gives an error:

Exception in thread "main" java.lang.IllegalArgumentException: Invalid key code

at sun.awt.windows.WRobotPeer.keyPress(Native Method)

at java.awt.Robot.keyPress(Robot.java:354)

at testRobot.Main7.main(Main7.java:21)

code show as below;

import java.awt.AWTException;

import java.awt.Robot;

import java.awt.event.KeyEvent;

public class Main7 {

public static void main(String[] args) throws AWTException {

Robot robot = new Robot();

robot.setAutoDelay(300);

robot.delay(5000);

robot.keyPress(KeyEvent.VK_MINUS);

robot.keyRelease(KeyEvent.VK_MINUS);

robot.keyPress(KeyEvent.VK_OPEN_BRACKET );

robot.keyRelease(KeyEvent.VK_OPEN_BRACKET );

robot.keyPress(KeyEvent.VK_SEMICOLON);

robot.keyRelease(KeyEvent.VK_SEMICOLON );

robot.keyPress(KeyEvent.VK_QUOTE);

robot.keyRelease(KeyEvent.VK_QUOTE );

}

}

Is there any way to solve this, note (the above four key values represent German ßüöä)

------------------------------- ORIGINAL MESSAGE----------------------------

很简单的一个程序,Windows系统,Java8在德语环境下启动如下程序,总是报错:

Exception in thread "main" java.lang.IllegalArgumentException: Invalid key code

at sun.awt.windows.WRobotPeer.keyPress(Native Method)

at java.awt.Robot.keyPress(Robot.java:354)

at testRobot.Main7.main(Main7.java:21)

代码如下;

import java.awt.AWTException;

import java.awt.Robot;

import java.awt.event.KeyEvent;

public class Main7 {

public static void main(String[] args) throws AWTException {

Robot robot = new Robot();

robot.setAutoDelay(300);

robot.delay(5000);

robot.keyPress(KeyEvent.VK_MINUS);

robot.keyRelease(KeyEvent.VK_MINUS);

robot.keyPress(KeyEvent.VK_OPEN_BRACKET );

robot.keyRelease(KeyEvent.VK_OPEN_BRACKET );

robot.keyPress(KeyEvent.VK_SEMICOLON);

robot.keyRelease(KeyEvent.VK_SEMICOLON );

robot.keyPress(KeyEvent.VK_QUOTE);

robot.keyRelease(KeyEvent.VK_QUOTE );

}

}

有没有什么办法能够解决,备注(上面四个键值代表德语的ßüöä)

Comments
Post Details
Added on Aug 19 2019
1 comment
1,817 views