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


    }
}
相关推荐
陈天伟教授几秒前
AI 未来趋势:产业应用范式之变
大数据·开发语言·人工智能·gpt
小瓦码J码4 分钟前
Spring boot 如何自定义加密解密数据库连接配置
java
XiYang-DING4 分钟前
【Java EE】JUC的常见类(Callable、ReentrantLock、Semaphore和CountDownLatch )
java·java-ee
RuoyiOffice6 分钟前
2026 年开源 BPM/工作流引擎大盘点:Flowable vs Camunda vs Activiti vs Turbo——谁才是企业级首选?
java·spring boot·后端·开源·流程图·ruoyi·anti-design-vue
Han.miracle9 分钟前
Java IO 流编程实战
开发语言
SamDeepThinking11 分钟前
别把业务逻辑塞进存储过程,适当用表驱动法
java·后端·架构
HZY1618yzh13 分钟前
洛谷题解:P16304 [蓝桥杯 2026 省 Java C 组] 抽奖活动
java·c++·算法·蓝桥杯
java1234_小锋22 分钟前
Spring AI 2.0 开发Java Agent智能体 - Advisors —— 拦截器模式增强AI能力
java·人工智能·spring·ai·spring ai2.0
Komore31526 分钟前
商户查询缓存
java·redis·缓存
skywalk816329 分钟前
编程里碰到的柯里化是什么意思?
开发语言