Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Inject a keystroke in java

I'm looking for a way to inject a keystroke into the OS keyboard input buffer, like when you click a button the program inserts one (or more) keyboard strokes. I wanted to do this in java because I want to run this in (win,linux and osx). I guess that I'll have to make use of the JNI, do anyone have some ideas?

Thanks all stackoverflowers ;)

like image 739
AndreDurao Avatar asked Dec 29 '22 08:12

AndreDurao


2 Answers

My guess is that the java.awt.Robot class will do this for you:

new Robot().keyPress(...);

http://download.oracle.com/javase/6/docs/api/java/awt/Robot.html#keyPress(int)

java.awt.Robot "is used to generate native system input events for the purposes of test automation, self-running demos, and other applications where control of the mouse and keyboard is needed."

like image 168
Steve McLeod Avatar answered Dec 31 '22 11:12

Steve McLeod


Check java Robot . I believe this is what you are looking for.

Also check this out. Example

like image 40
chedine Avatar answered Dec 31 '22 12:12

chedine