颜色检测后发生事件

时间:2012-03-30 07:30:27

标签: java graphics colors awt

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

例如,我在屏幕上绘制了黄色填充椭圆形,我希望如果鼠标点击该颜色,则会导致特定事件发生。同样地,我可能在屏幕上有其他不同的图画,我希望不同的颜色发生不同的事件。

是否可以在Java图形中使用?

2 个答案:

答案 0 :(得分:1)

你可以这样做;

  • 获取点击事件的屏幕坐标
  • 以给定坐标获取屏幕颜色
  • 然后根据颜色做你的工作

伪代码:

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

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

答案 1 :(得分:0)

看看Robot.getPixelColor(x, y)

  

public Color getPixelColor(int x,                     int y)

     

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

     

参数:x - 像素的X位置

     

y - Y位置   像素

     

返回:像素的颜色