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());
        }


    }
}
相关推荐
AIFQuant几秒前
贵金属 API 避坑:黄金/白银行情接口常见陷阱(数据漂移、断点、延迟)
开发语言·python·websocket·金融·restful·贵金属
加号37 分钟前
【C#】 HTTP 请求通讯实现指南
开发语言·http·c#
码上小翔哥15 分钟前
Spring Boot Redis 缓存序列化踩坑记:GenericJackson2JsonRedisSerializer 的数组反序列化陷阱
java·redis
pq21715 分钟前
LambdaMetafactory(fastjson2使用的黑科技)
java
SamDeepThinking18 分钟前
你认为从0-1开发一个项目最难的地方是什么?
java·后端·架构
平安的平安19 分钟前
Python实现RAG检索增强生成:让大模型拥有你的私有知识库
开发语言·python
昵称小白21 分钟前
栈与单调栈专题
开发语言·算法
Devin~Y22 分钟前
大厂Java面试实战:Spring Boot/Cloud、Redis/Kafka、JVM调优与Spring AI RAG(内容社区UGC+AIGC客服场景)
java·jvm·spring boot·redis·spring cloud·kafka·mybatis
code bean29 分钟前
【LangChain】少样本提示(Few-Shot Prompting)实战指南
开发语言·python·langchain
青山师32 分钟前
CompletableFuture深度解析:异步编程范式与源码实现
java·单例模式·面试·性能优化·并发编程