2024年4月5日发(作者:)
java鼠标双击事件 java鼠标双击监听
public class MyMouseListener
extends dapter ...{
public void mouseClicked(MouseEvent e) ...{
n("clicked");
int clickTimes = ckCount();
if (clickTimes == 2) ...{
n("Doublc Clicked!");
}
}
} 但是这样并没有达到我们的要求,因为在每次触发双击事件的同时会触发单击事件.所
以我们试图改进以上方案,不使用系统提供的ckCount()方法.可以考虑当第一次单
击鼠标的时候让鼠标单击事件延时0.2秒执行,而在这段时间里等待第二次单击,如果有第
二次单击,那么我们执行双击事件任务,取消单击任务;如果在这段时间没有等到再次单击,那
么执行单击任务.
下面是用定时器延时单击事件实现鼠标双击事件,单击和双击事件互不影响!
public class MyMouseListener
extends dapter ...{
private static boolean flag=false;//用来判断是否已经执行双击事件
private static int clickNum=0;//用来判断是否该执行双击事件
public void mouseClicked(MouseEvent e) ...{
final MouseEvent me=e;//事件源
=false;//每次点击鼠标初始化双击事件执行标志为false
if (um == 1) ...{//当clickNum==1时执行双击事件
oubleClicked(me);//执行双击事件
um=0;//初始化双击事件执行标志为0


发布评论