Java-GUI-鼠标监听
2021/4/14 12:25:16
本文主要是介绍Java-GUI-鼠标监听,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
GUI-鼠标监听
鼠标监听:使用鼠标监听的适配器(MouseAdapter),不用重写所有方法。
public class Application { public static void main(String[] args) { new MyFrame(); } } class MyFrame extends Frame{ public MyFrame(){ init(); } public void init() { // 设置窗口大小,坐标 setBounds(200, 200, 400, 400); // 添加鼠标监听按钮 addMouseListener(new MouseAdapter() { @Override public void mousePressed(MouseEvent e) { System.out.println("鼠标按下"); } @Override public void mouseClicked(MouseEvent e) { System.out.println("鼠标点击:鼠标按下和放开"); } @Override public void mouseReleased(MouseEvent e) { System.out.println("鼠标放开"); } }); // 关闭窗口 addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { // 终止程序 System.exit(0); } }); // 设置窗口显示 setVisible(true); } }
鼠标监听和画笔的结合
实现点击显示一个点
public class Application { public static void main(String[] args) { new MyFrame(); } } class MyFrame extends Frame{ List points; public MyFrame (){ init(); } public void init() { // 设置窗体的位置以及大小 setBounds(200, 200, 500, 600); // 存储每个点 points = new ArrayList(); // 监听鼠标点击 addMouseListener(new MyMouseListener()); // 实现关闭按钮 addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { System.exit(0); } }); // 设置窗体可见 setVisible(true); } @Override public void paint(Graphics g) { // 设置画笔颜色 g.setColor(Color.BLUE); // 获取点存储 Iterator it = points.iterator(); // 遍历点存储 while(it.hasNext()) { // 获取点 Point point = (Point)it.next(); // 获取点坐标 int x = (int)point.getX(); int y = (int)point.getY(); // 画点 g.fillOval(x, y, 10, 10); } } class MyMouseListener extends MouseAdapter{ @Override public void mousePressed(MouseEvent e) { // 获取当前窗口 MyFrame frame = (MyFrame)e.getSource(); // 获取鼠标点击的点 Point point = frame.getMousePosition(); // 把当前的点保存到存储点中 points.add(point); // 重画,才能实现每个点都被画 frame.repaint(); } } }
注意:必须得重画,才能实现点击的每个点被画出来,否则不显示。
这篇关于Java-GUI-鼠标监听的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26Java语音识别项目资料:新手入门教程
- 2024-11-26JAVA语音识别项目资料:新手入门教程
- 2024-11-26Java语音识别项目资料:入门与实践指南
- 2024-11-26Java云原生资料入门教程
- 2024-11-26Java云原生资料入门教程
- 2024-11-26Java云原生资料:新手入门教程
- 2024-11-25Java创意资料:新手入门的创意学习指南
- 2024-11-25JAVA对接阿里云智能语音服务资料详解:新手入门指南
- 2024-11-25Java对接阿里云智能语音服务资料详解
- 2024-11-25Java对接阿里云智能语音服务资料详解