MouseAdapter
时间: 2024-02-22 09:57:17 浏览: 68
Mouse事件+MouseAdapter-06Java高级话题_GUI
MouseAdapter 是 Java 中 MouseListener 接口的一个抽象类实现,用于简化 MouseListener 接口的使用。该类提供了 MouseListener 接口中的所有方法的默认实现,因此使用时只需要继承该类并覆盖需要使用的方法即可。
MouseAdapter 类中提供的方法包括:
1. mouseClicked(MouseEvent e):在鼠标单击时调用。
2. mousePressed(MouseEvent e):在鼠标按下时调用。
3. mouseReleased(MouseEvent e):在鼠标释放时调用。
4. mouseEntered(MouseEvent e):在鼠标进入组件时调用。
5. mouseExited(MouseEvent e):在鼠标离开组件时调用。
需要注意的是,MouseAdapter 类中的所有方法都是空方法,因此在使用时需覆盖需要使用的方法,并在其中编写相应的代码逻辑。
使用 MouseAdapter 的示例代码如下:
```java
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class MouseAdapterDemo extends JFrame {
private JPanel panel;
public MouseAdapterDemo() {
setTitle("MouseAdapter Demo");
setSize(300, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
panel = new JPanel();
panel.addMouseListener(new MyMouseListener());
add(panel);
}
private class MyMouseListener extends MouseAdapter {
@Override
public void mouseClicked(MouseEvent e) {
System.out.println("Mouse clicked at (" + e.getX() + ", " + e.getY() + ")");
}
}
public static void main(String[] args) {
MouseAdapterDemo frame = new MouseAdapterDemo();
frame.setVisible(true);
}
}
```
在上述代码中,我们创建了一个 JFrame 窗口,并在其中添加了一个 JPanel 组件。在 JPanel 上注册了一个 MyMouseListener 对象,该对象继承了 MouseAdapter 类并覆盖了 mouseClicked 方法。在 mouseClicked 方法中,我们输出了鼠标单击的坐标信息。当用户单击鼠标时,该信息会被输出到控制台中。
阅读全文