3

我已经向 a 添加了一个图像Jlabel,我想向它添加鼠标侦听器。我不知道将鼠标侦听器添加到Jlabel包含图像的位置。

所以任何知道如何实现这一点的人请告诉我。

我想在JLabel. 当用户拖动它时,它应该可以工作。

MouseHandler mk = new MouseHandler();
JLabel label = new JLabel();
label.addMouseListener(mk);

我在扩展鼠标适配器的类中实现了一个监听器。

4

3 回答 3

4

你可以试试 :

     JLabel nameLabel = new JLabel("Name:");
     nameLabel.addMouseMotionListener(new MouseMotionAdapter() {
        //override the method
        public void mouseDragged(MouseEvent arg0) {
                     // to do .........................
        }
    });

这就是我理解你的问题的方式。

但我想这也可以帮助你: 用鼠标点击在 JLabel 中拖动和移动图片

于 2013-08-21T14:35:00.987 回答
2

您正在将鼠标适配器添加为鼠标侦听器(处理单击、进入、退出、按下、释放)。如果要处理拖动和移动事件,则需要将其添加为鼠标运动侦听器。

于 2013-08-21T16:07:46.980 回答
0

您可以执行以下操作:

ImageIcon icon = new ImageIcon("C:/image.jpg"); //Path to the image  
JLabel label = new JLabel(icon); //add image to the label

label.addMouseMotionListener(new MouseMotionListener() {

        @Override
        public void mouseMoved(MouseEvent arg0) {
            // TODO Auto-generated method stub

        }

        @Override
        public void mouseDragged(MouseEvent arg0) {
            // TODO Auto-generated method stub

        }
    }); 

您可以根据需要将操作添加到上述方法中。

于 2013-08-21T18:11:25.030 回答