Hi i need to press non-english keys like "ü","ö" in java but i didnt managed to do this using robot class. So how can i press non-english characters?

6 Years
Discussion Span
Last Post by earwax

thanks for the reply but i get this 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:224)
at RobotExp.main(RobotExp.java:13)

can you help me with this too. I cant see any reason for this exception, here is the 13th line



That was just a guess (although DIAERESIS is the umlaut). Upon further investigation, KeyEvent is able to retreive the character (getKeyChar), but it cannot retrieve the code (getKeyCode) which is the int that needs to be used in Robot, and everything I've searched seems to point to the unfortunate circumstance that those keys simply are not provided a KeyCode and so cannot be used by Robot. The only thing I can say is to submit a "Request For Enhancement (RFE)" (or vote for any you can find on this topic). Through Sun it was handled in the bug database, not sure how it is handled through Oracle, though.


Thanks a lot for your help masijade. Well i found a workaround, using windows alt codes like Alt+0252 for "ü". That works for me right now.

This question has already been answered. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.