【问题标题】:Event occur after color detection颜色检测后发生事件
【发布时间】:2012-04-13 21:17:14
【问题描述】:

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

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

在 Java 图形中可能吗?

【问题讨论】:

  • 为了更好的帮助,请尽快编辑问题SSCCE
  • 你可以在组件中做的任何事情(例如绘制颜色和形状,或检测点击事件)都可以放入小程序或框架中,因此“小程序”变得无关紧要(也可以这样做,但不需要)作为选择。我从文本和标签中删除了小程序。

标签: java graphics colors awt


【解决方案1】:

你可以这样做;

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

伪代码:

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

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

【讨论】:

    【解决方案2】:

    看看Robot.getPixelColor(x, y)

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

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

    参数:x - 像素的X位置

    y - Y 位置 像素

    返回:像素的颜色

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-31
      • 2011-11-22
      相关资源
      最近更新 更多