方法是:
Robot robot = new Robot();
Color inputColor = new Color();
Rectangle rectangle = new Rectangle(0, 0, 1365, 770);
BufferedImage image = robot.createScreenCapture(rectangle);
for(int x = 0; x < rectangle.getWidth(); x++)
{
for (int y = 0; y < rectangle.getHeight(); y++)
{
if (image.getRGB(x, y) == inputColor.getRGB())
{
robot.mouseMove(x, y);
break;
}
}
}
return;
}
我想用Color的值调用该方法让它搜索该颜色的屏幕截图并返回该像素的(x,y)值,如果找到它可以发生或者方法只有一个输入输出必须相同?
答案 0 :(得分:0)
方法输入和输出可能不同,但它不能返回多个类型(或)值,x或y。如果你想返回x,y。您可能需要返回数组(或)您可以拥有类似下面的POJO类,将x,y设置为该类的实例并返回。
Dimension
{
int x;
int y;
setter..
getter..
}
答案 1 :(得分:0)
您可以这样做:
Point methodName(Color color) {
Point p = new Point();
// logic for finding point
return p; // or perhaps return null if color not found
}
你也可以只返回一个两元素int[]
而不是一个点。
答案 2 :(得分:0)
您可以使用x和y值返回java.awt.Point或使用int
数组,如果没有问题。