Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 事件发生在颜色检测之后_Java_Graphics_Colors_Awt - Fatal编程技术网

Java 事件发生在颜色检测之后

Java 事件发生在颜色检测之后,java,graphics,colors,awt,Java,Graphics,Colors,Awt,我想知道鼠标点击事件可以检测颜色甚至字符串 例如,我在屏幕上画了一个黄色的椭圆形,我想,如果鼠标点击那个颜色,它会导致特定的事件发生。同样,我可能有其他不同的图形在屏幕上,我希望不同的事件发生不同的颜色 在Java graphics中可能吗?看一下: 公共颜色getPixelColor(int x, int(y) 返回给定屏幕坐标下像素的颜色 参数:x-像素的x位置 y-y位置 像素数 返回:像素的颜色 你可以按自己的意愿去做 获取单击事件的屏幕坐标 获取给定坐标下屏幕的颜色 然后根据颜色做你

我想知道鼠标点击事件可以检测颜色甚至字符串

例如,我在屏幕上画了一个黄色的椭圆形,我想,如果鼠标点击那个颜色,它会导致特定的事件发生。同样,我可能有其他不同的图形在屏幕上,我希望不同的事件发生不同的颜色

在Java graphics中可能吗?

看一下:

公共颜色getPixelColor(int x, int(y)

返回给定屏幕坐标下像素的颜色

参数:x-像素的x位置

y-y位置 像素数

返回:像素的颜色

你可以按自己的意愿去做

  • 获取单击事件的屏幕坐标
  • 获取给定坐标下屏幕的颜色
  • 然后根据颜色做你的工作
伪代码:

public void mousePressed(MouseEvent e)
{ 
   Robot robot = new Robot();
   Color clickedColor = robot.getPixelColor(e.getX(),e.getY());
   doSomething(clickedColor);
}

从图像中检测字符串是另一个主题。您需要在计算机视觉领域搜索“字符/文本识别”。有现成的库可以做到这一点。

为了更快地获得更好的帮助,您可以在组件中执行任何操作(例如绘制颜色和形状,或检测单击事件),这些操作都可以放在小程序或框架中,因此“小程序”作为一种选择变得无关紧要(也可以执行,但不需要)。我从文本和标记中删除了小程序。