日期:2014-05-20  浏览次数:20738 次

让鼠标点击某个程序窗口的特定位置
我想做一个类似辅助性外挂的东西,挺简单,就是用鼠标点击游戏窗口的3个点,每5分钟点击3个点各一次。请教用Java怎么做?能给些源代码最好了。

------解决方案--------------------
鼠标连点器啊,没做过。

我觉得难点在定位上,考虑用户分辨率得。至于点击和计时都是小问题。

三个点对于界面的相对位置是确定的,你只要做好屏幕分辨率与相对点坐标的匹配就可以了吧。
------解决方案--------------------
建立一个线程 每sleep300000线程启动一次 每次启动对三个坐标响应一次事件
------解决方案--------------------
假设需每5分钟点击A(350,150),B(350,180),C(350,200)

Java code

public static void main(String args) {
try {
    Robot r = new Robot();
    int waitTime = 5; //minutes
    boolean continued = true;
    
    while (continued) {
        //A (350, 150)
        r.mouseMove(350, 150);
        r.mousePress(InputEvent.BUTTON1_MASK);
        r.mouseRelease(InputEvent.BUTTON1_MASK);
        Thread.sleep(1000);
        
        //B (350, 180)
        r.mouseMove(350, 180);
        r.mousePress(InputEvent.BUTTON1_MASK);
        r.mouseRelease(InputEvent.BUTTON1_MASK);
        Thread.sleep(1000);
        
        //C 350, 200
        r.mouseMove(350, 200);
        r.mousePress(InputEvent.BUTTON1_MASK);
        r.mouseRelease(InputEvent.BUTTON1_MASK);
        
        Thread.sleep( waitTime * 60000);
    }
} catch (Exception e) {
    System.out.println("error :" + e);
    e.printStackTrace();
}