有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何知道它是否被点击在图形对象上

我遇到了一个问题。我有一个鼠标事件

  @Override
  public void mouseClicked(MouseEvent e){


  }

而且效果很好。但我有形状

Rectangle r = new Rectangle();
r.setSize(50, 50);
r.setLocation(200, 200)
g2d.draw(r);

当鼠标事件被触发时,我需要一些东西来检查它是否被点击在我的矩形上。不仅仅是屏幕上的任何地方

if (e.ClickedOnRectangle) {
//Do stuff
}

差不多吧。有什么解决办法吗

如何检查我的鼠标是否点击了AWT(图形)对象


共 (1) 个答案

  1. # 1 楼答案

    视情况而定。如果Shape包含在发生鼠标事件的容器中,那么应该是使用Shape#contains方法的简单情况

    @Override
    public void mouseClicked(MouseEvent e){
        if (rect.contains(e.getPoint()) {
            // Was clicked...
        }
    }
    

    更详细地看一下^{}JavaDocs