Java 在windows 下模拟鼠标键盘的输入
2014-05-23 11:04
666 查看
Java提供了一个很好的自动化测试类供我们去模拟鼠标键盘消息。以下是Robot的主要方法
运行结果:
Robot类的主要方法详细信息
1、mouseMove(int x,int y)将鼠标指针移动到给定屏幕坐标;2、mousePress(int buttons)按下一个或多个鼠标按钮。使用mouseRelease(int buttons)方法释放鼠标按钮;3、mouseWheel(int wheelAmt)在配有滚轮的鼠标上旋转滚轮。参数wheelAmt是移动鼠标滚轮的”刻痕“数,负值表示向上/远离用户的运动,正值表示向下/接近用户的运动。4、keyPress(int keycode)按下给定的键。应该使用 keyRelease 方法释放该键。 拥有一个以上与之相关的物理键(例如,KeyEvent.VK_SHIFT 可能指左 shift 键或右 shift 键)的键代码可能映射到左键。 5、keyRelease(int keycode)释放给定的键。拥有一个以上与之相关的物理键(例如,KeyEvent.VK_SHIFT 可能指左 shift 键或右 shift 键)的键代码可能映射到左键。6、delay(int ms)睡眠指定的时间。为了捕获发生的所有 InterruptedException,可以使用 Thread.sleep() 替代。7、createScreenCapture(Rectangle screenRect)创建包含从屏幕中读取的像素的图像。该图像不包括鼠标光标。例子:是产生两个按钮,模拟在按钮上按下左键或者右键import java.awt.AWTException; import java.awt.EventQueue; import java.awt.GridLayout; import java.awt.MouseInfo; import java.awt.Point; import java.awt.Robot; import java.awt.event.InputEvent; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.JButton; import javax.swing.JFrame; import org.omg.CORBA.PUBLIC_MEMBER; public class Test extends JFrame { private JButton btn1 = new JButton("按钮_1"); private JButton btn2 = new JButton("按钮_2"); private Robot robot; public Test(){ this.setLayout(new GridLayout(0,1)); this.add(btn1); this.add(btn2); btn1.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e){ if(e.getButton() == MouseEvent.BUTTON1) System.out.println("按钮1鼠标左键被按下!"); if(e.getButton() == MouseEvent.BUTTON3) System.out.println("按钮1鼠标右键被按下!"); } }); btn2.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e){ if(e.getButton() == MouseEvent.BUTTON1) System.out.println("按钮2鼠标左键被按下!"); if(e.getButton() == MouseEvent.BUTTON3) System.out.println("按钮2鼠标右键被按下!"); } }); } public void testMoni(){ try { robot = new Robot(); robot.delay(1000);//延迟一秒 robot.mouseMove(100, 50);//移动到按钮的所在位置 robot.mousePress(InputEvent.BUTTON1_MASK);//按下左键 robot.mouseRelease(InputEvent.BUTTON1_MASK);//松开左键 /** * robot.mouseMove(100, 50);//移动到按钮的所在位置 robot.mousePress(InputEvent.BUTTON1_MASK);//按下右键 robot.mouseRelease(InputEvent.BUTTON1_MASK);//松开右键 */ } catch (AWTException e) { e.printStackTrace(); } } public static void main(String args[]){ EventQueue.invokeLater(new Runnable(){ @Override public void run() { Test frame = new Test(); frame.setSize(400, 400); frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.testMoni(); } }); } }
运行结果:
相关文章推荐
- Java中模拟鼠标和键盘输入
- Java模拟鼠标键盘输入事件 --- Robot 类
- Java中模拟鼠标和键盘输入
- [python]windows下模拟鼠标点击和键盘输入
- windows下模拟鼠标点击和键盘输入
- [python]windows下模拟鼠标键盘输入
- 在windows下模拟鼠标键盘输入的几种方法 (附带源代码)
- Windows下C++ 模拟键盘输入,鼠标点击,鼠标移动,获取句柄
- Java 实现全局(全操作系统)的键盘鼠标模拟
- Java.awt.Robot 控制鼠标移动、键盘按键等输入操作
- java中模拟鼠标和键盘操作
- 用pywin32实现windows模拟鼠标及键盘动作
- vc++6.0 模拟鼠标点击代码 木马程序的编写 VC 模拟键盘输入
- windows模拟键盘输入,QT实现虚拟键盘的实现方式
- Java 实现全局(全操作系统)的键盘鼠标模拟
- 模拟键盘、鼠标输入keybd_event
- python 模拟键盘鼠标输入
- Java 模拟键盘输入的小Demo
- Java中实现鼠标模拟与键盘映射
- Java模拟鼠标键盘操作