本文代码来自以下连接。
http://www.developer.com/java/other/article.php/10936_2212401_3(Introduction to the Java Robot Class in Java)
代码简单说明:可以启动windows的notepad程序,并输入 hello world 。
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
public class Robot05{
//Create an array of keycode data
static int keyInput[] = {
KeyEvent.VK_H,
KeyEvent.VK_E,
KeyEvent.VK_L,
KeyEvent.VK_L,
KeyEvent.VK_O
};//end keyInput array
public static void main(String[] args)
throws AWTException,IOException{
Runtime.getRuntime().exec("notepad");
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_SHIFT);
for (int cnt2 = 0;cnt2 < keyInput.length; cnt2++){
if(cnt2 > 0){
robot.keyRelease(KeyEvent.VK_SHIFT);
}//end if
robot.keyPress(keyInput[cnt2]);
//Insert a one-half second delay between
// characters.
robot.delay(500);
}//end for loop
}//main
}//end class Robot05
Robot05的GUI版本。
Robot05GUI.java
/**
* Robot05GUI.java
* create by kin. 2004/11/07.
* Please enjoy this.
*/
import javax.swing.*;
import javax.swing.event.*;
import java.awt.event.*;
import java.awt.*;
/**Robot05's GUI version.*/
public class Robot05GUI extends JFrame {
private JButton b = new JButton("Start Notepad and input \"Hello World\"");
public Robot05GUI() {
super("Start Notepad and input \"Hello World\"");
getContentPane().add(b,BorderLayout.CENTER);
b.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
try {
new Robot05().main(new String[]{});
} catch (Exception ex) {
ex.printStackTrace();
}
}
});
}
public static void main(String[] args) {
Robot05GUI r = new Robot05GUI();
r.setSize(200,200);
r.setVisible(true);
}
}