java - Robot 的 getPixelColor(int x, int y) 方法如何工作?

标签 java time colors pixel awtrobot

the method getPixelColor(int x,int y) from the Robot class 到底是怎么做到的?工作?我试过这个代码片段:

try 
{
     Robot robos = new Robot();
}
catch (AWTException e) 
{

}

for (int i = 0; i < 100; i++)
    robos.getPixelColor(0, 0);

System.out.println("fsadf");

在我的 PC 上,它是 core 2 duo,执行打印语句只用了一秒钟或更短的时间。但是,当我在我的笔记本电脑(核心 i3)上运行同样的代码时,它花费了更多的时间(大约 2-3 秒)。

这背后的原因是什么?是不是跟屏幕质量之类的有关系?我该如何解决这个问题?

最佳答案

how can i solve this problem?

不要使用机器人逐个像素地获取颜色。使用机器人创建屏幕的 BufferedImage。然后可以使用 BufferedImage 的 getRGB() 方法获取表示像素颜色的 int 值。然后,您可以使用此 int 创建一个颜色对象或直接解析出红/绿/蓝值。

关于java - Robot 的 getPixelColor(int x, int y) 方法如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7168839/

相关文章:

java - 玩!错误消息未显示在 UI 上

java - 通用类型和 toArrayMethod

opengl-es - OpenGL ES 2.0着色器,时间变量是如何调用的?

php - 如何获取当前分钟php

java - system.nanoTime() 错误吗?

Android动态改变APP主题

jquery - 虹膜颜色选择器

winforms - RichTextBox 和下划线颜色

Java "add return statement"错误

java - Java套接字将多个对象发送到同一服务器