java 鼠标点击和移动和键盘事件

复制代码
import java.awt.*;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
import java.awt.event.MouseEvent;
import java.util.Scanner;


public class Tset1 {
    public static void main(String[] args) throws AWTException {
        /*GUI*/
        Robot robot = new Robot();

        Scanner scanner = new Scanner(System.in);
        System.out.println("点赞1,666 2");
        int i3 = scanner.nextInt();
        System.out.println("输入x坐标");
        int i1 = scanner.nextInt();
        System.out.println("输入y坐标");
        int i2 = scanner.nextInt();
        // 打印鼠标位置的屏幕坐标
        if (i3 == 1) {
            pointDz(i1, i2, robot);
        } else {
            /*扣666*/
            robot.delay(3000);
            System.out.println("鼠标移动到文本框");
            pointK666(i1, i2, robot);
        }

    }

    /*666*/
    private static void pointK666(int i1, int i2, Robot robot) {
        for (int i = 0; i < 10; i++) {
            robot.mouseMove(i1, i2);
            /*扣666*/
            robot.keyPress(KeyEvent.VK_6);
            robot.keyRelease(KeyEvent.VK_6);
            robot.keyPress(KeyEvent.VK_6);
            robot.keyRelease(KeyEvent.VK_6);
            robot.keyPress(KeyEvent.VK_6);
            robot.keyRelease(KeyEvent.VK_6);
            robot.keyPress(KeyEvent.VK_ENTER);
            robot.keyRelease(KeyEvent.VK_ENTER);
            robot.delay(1000);
            // 获取当前鼠标位置
            Point mouseLocation = MouseInfo.getPointerInfo().getLocation();

            System.out.println("Mouse Screen Coordinates: (" + mouseLocation.x + ", " + mouseLocation.y + ")");
            if (i1 != mouseLocation.x) {
                break;
            }
        }

    }


    /*点赞*/
    private static void pointDz(int i1, int i2, Robot robot) throws AWTException {

        for (int i = 0; i < 10; i++) {
            robot.mouseMove(i1, i2);
            /*按下*/
            robot.mousePress(InputEvent.BUTTON1_DOWN_MASK);
            /*松开*/
            robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);
            robot.delay(1000);

            /*滚轮向下*/
            //robot.mouseWheel(1);
            // 获取当前鼠标位置
            Point mouseLocation = MouseInfo.getPointerInfo().getLocation();
            System.out.println("Mouse Screen Coordinates: (" + mouseLocation.x + ", " + mouseLocation.y + ")");
            if (i1 != mouseLocation.x) {
                break;
            }
            Color pixelColor = robot.getPixelColor(i1, i2);
            System.out.println(pixelColor.getBlue());
            System.out.println(pixelColor.getRed());
            System.out.println(pixelColor.getGreen());
        }


    }
}
相关推荐
FQNmxDG4S17 小时前
Java多线程编程:Thread与Runnable的并发控制
java·开发语言
前端老石人18 小时前
HTML 字符引用完全指南
开发语言·前端·html
matlab_xiaowang18 小时前
Redux 入门:JavaScript 可预测状态管理库
开发语言·javascript·其他·ecmascript
虹科网络安全18 小时前
艾体宝干货|数据复制详解:类型、原理与适用场景
java·开发语言·数据库
axng pmje19 小时前
Java语法进阶
java·开发语言·jvm
rKWP8gKv719 小时前
Java微服务性能监控:Prometheus与Grafana集成方案
java·微服务·prometheus
老前端的功夫19 小时前
【Java从入门到入土】28:Stream API:告别for循环的新时代
java·开发语言·python
qq_4352879219 小时前
第9章 夸父逐日与后羿射日:死循环与进程终止?十个太阳同时值班的并行冲突
java·开发语言·git·死循环·进程终止·并行冲突·夸父逐日
小江的记录本19 小时前
【Kafka核心】架构模型:Producer、Broker、Consumer、Consumer Group、Topic、Partition、Replica
java·数据库·分布式·后端·搜索引擎·架构·kafka
止语Lab19 小时前
从手动到框架:Go DI 演进的三个拐点
开发语言·后端·golang