调用按钮的 doClick() 方法,下例演示了 button2 模拟点击 button1 按钮:
成都创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于网站制作、成都网站建设、越秀网络推广、小程序开发、越秀网络营销、越秀企业策划、越秀品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;成都创新互联公司为所有大学生创业者提供越秀建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com
import java.awt.FlowLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class App extends JFrame {
public App() {
this.setSize(300, 200);
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLayout(new FlowLayout());
JButton button1 = new JButton("Button1");
button1.addActionListener(e - JOptionPane.showMessageDialog(App.this, "我是Button1"));
this.add(button1);
JButton button2 = new JButton("Button2");
button2.addActionListener(e - button1.doClick());
this.add(button2);
}
public static void main(String[] args) {
new App().setVisible(true);
}
}
这个比较简单的,用 java.awt.Robot 来实现就行了。
Robot 对象有几个个方法就是操作键盘的:
void keyPress(int kc);
void keyRelease(int kc);
//例子
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;
public class RobotTest {
private static Robot rbt;
static{
try {
rbt=new Robot();
} catch (AWTException e) {e.printStackTrace();}
}
//按下
static void press(int kc){rbt.keyPress(kc);}
//释放
static void release(int kc){rbt.keyRelease(kc);}
static void type(int kc){press(kc);release(kc);}
public static void main(String[] args) {
//F7 长按
//press(KeyEvent.VK_F7);
//F7按一下
type(KeyEvent.VK_F7);
//...
}
}
java.awt.Robot
//模拟Ctrl+Alt+Z的按下和抬起
public void keyBoardDemo()
{
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_ALT);
robot.keyPress(KeyEvent.VK_Z);
robot.keyRelease(KeyEvent.VK_CONTROL);
robot.keyRelease(KeyEvent.VK_ALT);
robot.keyRelease(KeyEvent.VK_Z);
}