博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
以JTextPanel为例Swing的鼠标事件详解
阅读量:6265 次
发布时间:2019-06-22

本文共 1573 字,大约阅读时间需要 5 分钟。

如下界面可以通过该界面研究一下Swing的鼠标事件:

图中用红粗线圈起来的为JtextPanel,该Panel添加了鼠标事件监听器,鼠标事件监听器有三种,分别为MouseWheelListener,MouseMotionListener和MouseListener分别用来监听鼠标的滑轮事件,鼠标的移动事件,和一般的鼠标事件。

通过给JtextPanel添加鼠标事件监听器和加上打印信息后很容易就能摸得着鼠标事件的规律,滑轮事件不用说了,鼠标移动事件包括Dragged和Moved,这两种事件只要鼠标在移动不论是动还是被按住拖拽都会不断的触发事件, 一般鼠标事件有Pressed,Released,Clicked,Entered,Exited,以选中TextPanel中下面的一段文字进行说明各事件:只要鼠标在TextPanel中移动就不断的触发Moved,离开TextPanel区域就会触发Exited,进入则有Entered, 鼠标点击则Clicked(其实还包括Pressed和Released),选中的过程中开始有Pressed,中间是不断的Dragged,结束后是Released. 其实很容易记,下次记住就不用每次都做实验了!

下面是代码片段

 

docTextPane = new JTextPane();		docTextPane.addMouseWheelListener(new MouseWheelListener() {			public void mouseWheelMoved(MouseWheelEvent e) {				System.out.println("Mouse WheelMoved");			}		});		docTextPane.addMouseMotionListener(new MouseMotionAdapter() {			@Override			public void mouseDragged(MouseEvent e) {				System.out.println("Mouse Dragged");			}			@Override			public void mouseMoved(MouseEvent e) {				System.out.println("Mouse mouse Moved");			}		});		docTextPane.addMouseListener(new MouseAdapter() {			@Override			public void mousePressed(MouseEvent e) {				System.out.println("Mouse mouse Pressed");			}			@Override			public void mouseReleased(MouseEvent e) {				System.out.println("Mouse mouse  Released");			}			@Override			public void mouseClicked(MouseEvent e) {				System.out.println("Mouse mouse Clicked");			}			@Override			public void mouseEntered(MouseEvent e) {				System.out.println("Mouse mouse Entered");			}			@Override			public void mouseExited(MouseEvent e) {				System.out.println("Mouse mouse Exited");			}		});

 

 

你可能感兴趣的文章
Java多线程编程:变量共享分析(Thread)
查看>>
word如何自动生成目录
查看>>
疯狂暑期学习计划~~~
查看>>
Mysql查询大表出现的一个错误
查看>>
Scala 中的foreach和map方法比较
查看>>
使用OWIN作为WebAPI的宿主
查看>>
阿里巴巴、腾讯、百度的面试问题笔知识汇总(两)
查看>>
如果他们在未来的几年内技术水平没有突破性的提升,或者缺乏一点灵性和品味,那么可能在未来很长一段时间内,他们都会保持这个薪资水平(转)...
查看>>
修改setup.py的源
查看>>
SQL Server 常用高级语法笔记
查看>>
IOS开发之SVN的使用
查看>>
百度.搜狐...2015产品经理面试题
查看>>
Rewriting History with Git Rebase
查看>>
(算法)跳格子
查看>>
骨头汤,猪肉汤
查看>>
Codeforces Round #318 [RussianCodeCup Thanks-Round] (Div. 1) A. Bear and Poker 分解
查看>>
生成文件下载
查看>>
腾讯bugly 的crash 上报和umeng的比较
查看>>
A CIRCULAR PROGRESSBAR STYLE USING AN ATTACHED VIEWMODEL
查看>>
一些学习资料
查看>>