【问题标题】:How to know if it was clicked on a graphics object如何知道它是否被点击了一个图形对象
【发布时间】:2014-10-04 05:14:49
【问题描述】:

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

  @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(图形)对象?

【问题讨论】:

    标签: java graphics awt mouselistener


    【解决方案1】:

    这取决于。如果Shapes 包含在发生鼠标事件的容器中,那么它应该是使用Shape#contains 方法的简单案例

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

    仔细查看Shape JavaDocs 了解更多详情

    【讨论】:

    • 谢谢!希望其他人也觉得这有帮助!
    猜你喜欢
    • 2021-09-29
    • 1970-01-01
    • 2010-11-30
    • 1970-01-01
    • 1970-01-01
    • 2018-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多