【问题标题】:Mouse event in JavaJava中的鼠标事件
【发布时间】:2011-03-04 21:12:32
【问题描述】:

我正在尝试在表格上移动一个 JComponent,比如一个标签。我正在使用 MouseMotionListener 的 mouseDragged 方法跟踪这个事件。这个方法完美地帮助我跟踪项目。有没有办法在拖动完成后跟踪鼠标释放(.ie drop 事件)。

 tktLabel1.addMouseMotionListener(new MouseMotionListener()
            {

                public void mouseDragged(MouseEvent arg0)
                {
                    tktLabel1.setBounds(tktLabel1.getX() + arg0.getX(),
                            tktLabel1.getY() + arg0.getY(), width, height);

                }

                public void mouseMoved(MouseEvent arg0)
                {

                }
            });

【问题讨论】:

    标签: java jtable mouseevent jlabel


    【解决方案1】:

    鼠标事件有 2 个监听器。您已经在使用的 MouseMotionListener 和 MouseListener,它监听诸如按下、释放等的事情。

    如果在此接口上实现所有六个方法的负担太大,您可以扩展MouseAdapter,而不是为所有事件类型提供默认的无操作方法,您可以覆盖您需要的方法。

    编辑

    仔细检查后,JList、JTable 和 JTree require a bit extra 似乎支持拖放。您必须实现 DropTarget 才能收到这些事件的通知。

    【讨论】:

      猜你喜欢
      • 2012-01-21
      • 2012-01-14
      • 2012-04-21
      • 2013-11-07
      • 1970-01-01
      • 2011-05-30
      • 2011-02-02
      • 2014-07-29
      • 1970-01-01
      相关资源
      最近更新 更多