【问题标题】:How do you determine if the mouse is point to a particular object?您如何确定鼠标是否指向特定对象?
【发布时间】:2013-06-29 00:54:20
【问题描述】:

我正在阅读的这本教科书有一个问题:

" 您将如何确定鼠标是否指向特定对象 _ball,该对象在 JPanel 的子类中被声明为 Ellipse2D.Double。MouseEvent 对象由名为 "e" 的参数引用。"

我对“鼠标指向”的含义感到困惑,这是否意味着鼠标正在被点击_ball?如果是这样的话,答案不是在 _ball 对象上实现 java.awt.event.MouseListener 并以某种方式使用 java.awt.event.MouseEvent 类吗?

【问题讨论】:

    标签: java swing


    【解决方案1】:

    你可以定义它的含义。

    这可能意味着按照您的建议“点击”球。或者它可能意味着“移动”球。

    无论哪种方式,您都可以在面板中添加MouseListener。然后您需要将您的代码添加到mousePressed()mouseMoved() 事件。当事件触发时,您需要获取事件的鼠标点,然后使用椭圆的contains() 方法来确定您是“单击”还是“移过”球。

    【讨论】:

    • 当您说“将代码添加到 mousePressed() 或 mouseMoved() 甚至”时——这些方法位于何处?在JPanel 中?当您说“添加 MouseListener”时,这是否意味着在 JPanel 中实现 MouseListener 接口并创建一个私有 mouseListener 类来处理鼠标点?
    • @user2533249,阅读 How to Write a Mouse Listener 上的 Swing 教程,了解使用 MouseListener 的示例。
    • +1.... @user2533249 另见 this 答案,它演示了 camickr 的解决方案
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-18
    • 2010-11-09
    • 1970-01-01
    • 2010-10-13
    相关资源
    最近更新 更多