读书人

ava组件(Jlist、JTextArea.)的双击/

发布时间: 2013-01-25 15:55:29 作者: rapoo

ava组件(Jlist、JTextArea...)的双击/n击事件

java没有可用的鼠标双击事件,我们可以通过mouseLisener来获取事件,

MouseEvent .getClickCount可以获得鼠标敲击的次数,

另外还可以取个巧,通过两次单击之间的时间间隔来判断,下面给个例子:

// 通过检测两次鼠标敲击之间的事件间隔来判断是否双击
?? componet.addMouseListener(new MouseAdapter() {?
??? public void mouseReleased(MouseEvent me) {?
???? if(checkClickTime()) {
????? // 这里写你想做的事情
???? }
??? }
???
??? public boolean checkClickTime() {
???? // check time between two click events
???? long nowTime = (new Date()).getTime();
???? if((nowTime-clickTime)<300) { // 间隔小于300看作是双击事件
????? clickTime = nowTime;?
????? return true;?
???? }
???? clickTime = nowTime;?
???? return false;?
??? }

????? public void mouseClicked(MouseEvent e) {
?????????? if (e.getClickCount() == 2) {
??????????????? // ...
??????????? }
?????? }

?? });

读书人网 >编程

热点推荐