Button的双击事件如何实现????

jackyoung02 2004-04-09 11:24:14
最近项目需要,要实现Button的双击事件。自己参考了一下一些资料,其中有说道通过时间差来实现,利用SystemInformation.DoubleClickTime。
但是实际编码调试都没实现。
大家帮忙看看。
...全文
115 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
jackyoung02 2004-04-11
  • 打赏
  • 举报
回复
ok,多谢 jimh(jimmy) ,问题解决,如下:

pirvate btnMouseDownTime=DateTime.Now;//初始化

private void button1_Click(object sender, System.EventArgs e)
{
if (DateTime.Now < btnMouseDownTime.AddMilliseconds(SystemInformation.DoubleClickTime))//你需要的间隔时间
{
//双击处理代码
}
else
{
btnMouseDownTime=DateTime.Now;//
}

}

jimh 2004-04-10
  • 打赏
  • 举报
回复
补充一下
在Click事件里处理
pirvate mClickTime=DateTime.Now();//初始化

private void btn_Click(object sender, EventArgs e)
{
if ((DateTime.Now()-mClickTime)>??//你需要的间隔时间
{
//DoubleClick事件处理代码
}
else
{
mClickTime=DateTime.Now();//
}
}
jimh 2004-04-10
  • 打赏
  • 举报
回复
再Click事件里处理
pirvate mClickTime=DateTime.Now();//初始化

private void btn_Click(object sender, EventArgs e)
{
if ((DateTime.Now()-mClickTime)>??//你需要的间隔时间
{
//DoubleClick事件处理代码
}
}
jackyoung02 2004-04-09
  • 打赏
  • 举报
回复
我先声名DateTime btnMouseDownTime;
然后在构造函数中初始化:btnMouseDownTime = DateTime.Now;

通过button的MouseDown事件希望实现双击效果:
点击第一次记录当前时间,点击第二次时比较当前时间和刚记录的时间的时间差是否满足系统要求的双击之间的时间差,若满足,则实现双击:
private void button2_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
if(DateTime.Now < btnMouseDownTime.AddMilliseconds(SystemInformation.DoubleClickTime))
button1_Click(null,null);
}

可是怎样记录每次鼠标点击后的时间??
angxain 2004-04-09
  • 打赏
  • 举报
回复
关注

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧