Java获得像素LIVE的颜色

Jaa*_*nus 4 java mouse colors

我在查找光标下的当前颜色时遇到问题.

我的代码:

import java.awt.Color;
import java.awt.MouseInfo;
import java.awt.Point;
import java.awt.PointerInfo;
import java.awt.Robot;

public class Test {
    public static void main(String[] args) throws Exception {
        PointerInfo pointer;
        pointer = MouseInfo.getPointerInfo();
        Point coord = pointer.getLocation();

        Robot robot = new Robot();
        robot.delay(2000);

        while(true) {
            coord = MouseInfo.getPointerInfo().getLocation();       
            Color color = robot.getPixelColor((int)coord.getX(), (int)coord.getX());
            if(color.getGreen() == 255 && color.getBlue() == 255 && color.getRed() == 255) {
                System.out.println("WHITE FOUND");
            }
            robot.delay(1000);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

当我运行它时,即使我将鼠标放在灰色区域上,我也会收到"白色找到白色"的消息.

可能是什么问题?如果它对你不起作用,你们可以测试一下吗?

添加图片:我将光标放在Eclipse灰色区域上,但收到"WHITE FOUND"消息.

在此输入图像描述

MBU*_*MBU 6

我认为问题是你使用getX两次而不是getX和getY

Color color = robot.getPixelColor((int)coord.getX(), (int)coord.getX())
Run Code Online (Sandbox Code Playgroud)

应该

Color color = robot.getPixelColor((int)coord.getX(), (int)coord.getY())
Run Code Online (Sandbox Code Playgroud)