文档章节

JAVA鼠标监听器

o
 osc_zoa3moe9
发布于 2019/12/08 19:20
字数 536
阅读 13
收藏 0

精选30+云产品,助力企业轻松上云!>>>

1 package howework_07;
2 public class Example9_10 {
3     public static void main(String args[]) {
4             WindowMouse win=new WindowMouse();
5             win.setTitle("处理鼠标事件");
6             win.setBounds(100,100,460,360);
7     }
8 }
主类
 1 package howework_07;
 2 import java.awt.FlowLayout;
 3 import javax.swing.JButton;
 4 import javax.swing.JFrame;
 5 import javax.swing.JScrollPane;
 6 import javax.swing.JTextArea;
 7 import javax.swing.JTextField;
 8 public class WindowMouse extends JFrame{
 9     JTextField text;
10     JButton button;
11     JTextArea textArea;
12     MousePolice police;
13     WindowMouse(){//在窗口的构造函数中把组件实例化
14         init();
15         setVisible(true);
16         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
17     }
18     void init() {
19         setLayout(new FlowLayout());//将面板的布局设置为FlowLayout,面板上增加的组件默认是按照从左到右顺序排列
20         text =new JTextField(8);
21         textArea =new JTextArea(5,28);
22         police =new MousePolice();
23         
24         police.setJTextArea(textArea);
25         
26         text.addMouseListener(police);//事件源注册监听器
27         button =new JButton("按钮");
28         button.addMouseListener(police);//事件源注册监听器
29         //向窗口中加入组件
30         addMouseListener(police);
31         add(button);
32         add(text);
33         add(new JScrollPane(textArea));//滚动条
34     }
35 }
WindowMouse
 1 package howework_07;
 2 
 3 import java.awt.event.MouseEvent;
 4 import java.awt.event.MouseListener;
 5 
 6 import javax.swing.JButton;
 7 import javax.swing.JTextArea;
 8 import javax.swing.JTextField;
 9 
10 public class MousePolice implements MouseListener{
11     JTextArea area;//文本
12     public void setJTextArea(JTextArea area) {
13         this.area=area;
14     }
15     public void mousePressed(MouseEvent e) {
16         area.append("\n鼠标按下,位置:"+"("+e.getX()+","+e.getY()+")");
17     }//JTextArea中有append(),而JTextFiled中只有setText()
18     public void mouseReleased(MouseEvent e) {
19         area.append("\n鼠标释放,位置:"+"("+e.getX()+")"+e.getY()+")");
20     }
21     public void mouseEntered(MouseEvent e) {
22         if(e.getSource() instanceof JButton) {
23             area.append("\n鼠标进入按钮,位置:"+"("+e.getX()+","+e.getY()+")");
24         }
25         if(e.getSource() instanceof JTextField)
26             area.append("\n鼠标进入文本框,位置:"+"("+e.getX()+","+e.getY()+")");
27         if(e.getSource() instanceof JTextField)
28             area.append("\n鼠标进入窗口,位置:"+"("+e.getX()+","+e.getY()+")");
29     }
30     public void mouseExited(MouseEvent e) {
31         area.append("\n鼠标退出,位置:"+"("+e.getX()+","+e.getY()+")");
32     }
33     public void mouseClicked(MouseEvent e) {
34         if(e.getClickCount()>=2) 
35             area.setText("鼠标连击,位置:"+"("+e.getX()+","+e.getY()+")");
36     }
37 }
MousePolice

 java中鼠标监听器的用法;

首先创建一个类来实现鼠标监听器接口,然后对鼠标监听器的各种函数进行重载,以实现相关的操作。

然后对于需要添加监听器的组件,注册监听器   ().addMouseListener( )其中第一个括号为组件,后面为鼠标监听器的一个实例化的对象。

同时要记得把各个组件和鼠标监听器添加到窗口中。

上一篇: Mac配置Maven路径
下一篇: KETTLE教程实战
o
粉丝 1
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
java事件处理机制

一、认识 在Java语言中,当用户与GUI组件交互时,GUI组件能够激发一个相应事件。例如,用户按动按钮、滚动文本、移动鼠标或按下按键等,都将产生一个相应的事件。Java提供完善的事件处理机制...

14期-陈海明
04/01
0
0
Jmeter 建立数据库测试计划

建立数据库测试计划(Building a Database Test Plan) 在本节中,将学习如何创建测试数据库服务器一个简单的测试计划。您将创建五十个用户向数据库服务器发送2个SQL请求。并且,使这些用户运...

osc_dkpofdqu
2018/03/29
2
0
Java_绘图板_初始版==>进阶版

  先在show_plate()函数(方法:顺便提一提,Java的类中只有两个组成1)属性成员 2)方法函数,各种操作都要在函数中进行)建立一个窗体(顶级容器)JFrame Plate = new JFrame(),用来当所...

osc_mzab00xd
2019/05/01
1
0
Java事件处理机制

Java事件处理机制涉及三个成员:事件源、事件和事件监听器 事件源:Java的AWT或Swing组件,该组件就是事件源,通过new关键字即可创建 事件:由系统自动产生 事件监听器:整个事件处理的核心。...

osc_jz8ypj6y
2019/09/27
2
0
接口与监听器

java中的接口与监听器 一、继承的定义 在了解接口之前,我想我们得先来弄清楚继承这一个概念,java是一个面向对象编程的软件,所以在java中我们需要去定义类,众所周知,类具有方法和属性,由...

osc_eijo4qvb
06/29
15
0

没有更多内容

加载失败,请刷新页面

加载更多

如何获取NuGet以安装/更新packages.config中的所有软件包?

问题: I have a solution with multiple projects in it. 我有一个包含多个项目的解决方案。 Most of the third party references are missing, yet there are packages.config file for e......

fyin1314
31分钟前
17
0
Xcode中的版本与版本 - Version vs build in Xcode

问题: I have an app that I developed with Xcode 3 and recently started editing with Xcode 4. In the target summary I have the iOS application target form with fields: identifie......

javail
今天
14
0
如何在Python中将字典键作为列表返回? - How to return dictionary keys as a list in Python?

问题: In Python 2.7 , I could get dictionary keys , values , or items as a list: 在Python 2.7中 ,我可以将字典键 , 值或项作为列表获取: >>> newdict = {1:0, 2:0, 3:0}>>> newd......

技术盛宴
今天
17
0
2020世界人工智能大会开幕首日 百度与浦发银行达成战略合作

本文作者:y****n 7月9日,2020世界人工智能大会开幕首日,百度与浦发银行签署战略合作协议,将在人工智能、金融科技等多个领域进一步深化合作。双方将优势互补,实现人工智能技术在金融领域...

百度开发者中心
昨天
26
0
Java中C ++ Pair 的等价物是什么? - What is the equivalent of the C++ Pair in Java?

问题: Is there a good reason why there is no Pair<L,R> in Java? 有没有一个很好的理由说明Java中没有Pair<L,R> ? What would be the equivalent of this C++ construct? 这个C ++构造的......

富含淀粉
今天
18
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部