2

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

 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)
                {

                }
            });
4

1 回答 1

4

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

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

编辑

仔细观察,JList、JTable 和 JTree 似乎需要一些额外的拖放支持。您必须实现DropTarget才能收到这些事件的通知。

于 2010-06-17T09:51:56.530 回答