0

好吧,J Barclay 解决了我的所有问题,但只有一个问题!耶!!

不能从静态上下文引用非静态方法 getRGB()。

第 28 行-

新代码——

    import java.awt.*;
    import java.awt.event.*;
    import java.awt.Robot;
    import java.awt.AWTException;
    import java.awt.Rectangle;
    import java.awt.Color;
    import java.awt.Toolkit;
    import java.awt.image.BufferedImage;
    import java.io.File;
    import java.io.IOException;
    import javax.imageio.ImageIO;

    public class GunningBot{
    public static void main(String[] args) throws Exception{

    Robot robot = new Robot();
Color color = new Color(195, 174, 196);

{
Rectangle rectangle = new Rectangle(0, 0, 1075, 700);

    {
    BufferedImage image = robot.createScreenCapture(rectangle);
    search: for(int x = 0; x < rectangle.getWidth(); x++)
    {
        for(int y = 0; y < rectangle.getHeight(); y++)
        {
            if(image.getRGB(x, y) == Color.getRGB())
            {
                robot.mouseMove(x, y);
                break search;
            }
        }
    }
    }
    }
4

1 回答 1

0

第一个问题是您访问的是 Robot 类的实例方法,而不是机器人的实例。

只需更改大小写,它将被修复:

BufferedImage image = robot.createScreenCapture(rectangle);

问题Color.getRGB(195, 174, 196)在于它是一个吸气剂,它没有参数。调用该方法的方法是:

color.getRGB();

但是同样,您正在使用没有实例的访问实例方法,您需要做的是:

Color color = new Color(r, g, b);
color.getRGB();
于 2012-01-31T21:09:41.353 回答