Java JButton - MouseMotionListener(MouseMoved)MouseOver效果

时间:2012-07-10 13:30:48

标签: java swing mouseover jbutton

我正在尝试像Java中的JavaScript中为JButton所知的那样做MouseOver效果。我添加了一个MouseMotionListener,它工作正常。如果我的鼠标触摸第一个按钮,我确实想要设置其他两个按钮可见。所以它完美地工作..但是如果鼠标没有超过Button,我不知道如何处理。我想在鼠标离开按钮

后将Buttons按钮设为false

继承我的代码:

mouseover.addMouseMotionListener(new MouseMotionListener() {
    public void mouseDragged(MouseEvent arg0) {}
    public void mouseMoved(MouseEvent arg0) {

        del.setVisible(true);
        addone.setVisible(true);



    }

mouseover是我想听的按钮。 del是我想要setVisible的另一个Button addone也

我不是很棒的英语:P

谢谢!

3 个答案:

答案 0 :(得分:2)

您正在寻找一个MouseListener,专门实现mouseExited。

http://docs.oracle.com/javase/tutorial/uiswing/events/mouselistener.html

您可能希望使用MouseAdapter来避免被强制实现MouseListener中的所有方法。 MouseAdapter只是一个实现鼠标监听接口的类。

http://docs.oracle.com/javase/6/docs/api/java/awt/event/MouseAdapter.html

答案 1 :(得分:2)

也许您想要检查setRolloverIcon()setRolloverSelectedIcon()方法,而不是使用MouseEvent

答案 2 :(得分:1)

而不是使用MouseMotionListener。使用MouseListener,此类有两个名为mouseEntered()mouseExited()的方法,这些方法可让您在鼠标进出按钮时进行必要的更改。

Here是关于MouseListeners的简要教程