像素监听器(监听器对像素变化做出反应)

Pixel Listener (Listener reacting on Pixel changes)

我想创建一个程序,它对某些像素做出反应,并在更改选定像素时增加计数器。 我正在为它使用机器人 class。导致这个:

Boolean dontcount = false;
Robot robot = new Robot();
while (true) {
if(robot.getPixelColor(900, 900).equals(b)){
    if(dontcount == false){
       counter=counter++;
        dontcount = true;
        System.out.println(counter);
    }
} else {
    dontcount = false;
}
}

正在杀死我的电脑,我正在寻找另一种方法。我想这对听众来说是可能的。但我不知道如何。有什么解决办法吗?

您的代码无法编译并且似乎没有多大意义所以我重写了它。以后一定要有完整的例子。

代码杀死您的 PC 的原因是您应该在 while 循环中稍微等待一段时间,让计算机知道它有喘息的机会。 10ms 足够了。

import java.awt.AWTException;
import java.awt.Color;
import java.awt.Robot;

public class Main
{
    public static void main(String[] args)
    {
        Robot robot = null;
        try
        {
            robot = new Robot();
        } catch (AWTException e1)
        {
            e1.printStackTrace();
        }

        Color lastPixelColor = null;
        int counter = 0;

        while (true)
        {
            Color pixelColor = robot.getPixelColor(900, 900);
            if (!pixelColor.equals(lastPixelColor))
            {
                counter++;
                System.out.println(counter);
            }

            lastPixelColor = pixelColor;

            try
            {
                // You need to sleep so you don't murder your CPU
                Thread.sleep(10);
            } catch (InterruptedException e)
            {
            }
        }
    }
}