像素帮助-Java

像素帮助-Java,java,Java,好的,我有: Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Rectangle screenRectangle = new Rectangle(screenSize); Robot robot = new Robot(); BufferedImage image = robot.createScreenCapture(screenRectangle) int w = image.getWidth(nul

好的,我有:

Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Rectangle screenRectangle = new Rectangle(screenSize);
Robot robot = new Robot();
BufferedImage image = robot.createScreenCapture(screenRectangle)


int w = image.getWidth(null);
int h = image.getHeight(null);
int[] rgbs = new int[w*h];
image.getRGB(0, 0, w, h, rgbs, 0, w);
// find your pixel in the rgbs array
for(int y=0;y<h;y++) {
    for(int x=0;x<w;x++) {
        if(rgbs[(y*w) + x] == mypixel) { // mypixel
            robot.mouseMove(x, y);
            robot.mousePress(InputEvent.BUTTON1_MASK);
            robot.mouseRelease(InputEvent.BUTTON1_MASK);
        }
    }
}
Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();
矩形屏幕矩形=新矩形(屏幕大小);
机器人=新机器人();
BuffereImage image=robot.createScreenCapture(屏幕矩形)
int w=image.getWidth(null);
int h=image.getHeight(null);
int[]rgbs=新int[w*h];
getRGB(0,0,w,h,rgbs,0,w);
//在rgbs阵列中查找您的像素

for(int y=0;yrbgs是整个屏幕快照的颜色值数组。下面这行将图片中当前像素的颜色值与您想要单击的颜色进行比较。该变量可能是一个整数。

if(rgbs[(y*w)+x]==mypixel)
获取所需颜色值的最简单方法是使用

mypixel = new Color(red, green, blue).getRGB();

你能澄清这个问题吗?首先假设我们不知道你的问题的所有细节。@Hovercraft满是鳗鱼我需要一个mypixel可能是什么的例子。它所做的是捕获一个与你整个屏幕大小相同的图像,然后扫描每个像素,如果它与mypixel匹配,则执行下面的代码。我对什么是mypixel感到困惑t替换mypixel。我不知道mypixel应该是RGB格式的颜色…我想。我最初的问题是:那么我认为这个程序是为了在屏幕上找到一个特定颜色的像素(mypixel)并点击它,对吗?