如何判断DoubleClick事件是左键还是右键双击引发的? 控件的DoubleClick事件,对左键双击和右键双击都有响应不使用MouseDown、MouseUp,能不能在DoubleClick事件处理的地方就简单的判断出是左键双击还是右键双击?或者有没有方法只允许左键双击引发DoubleClick事件? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 if(e.Button == MouseButtons.Left) { DoSomething(); } if(e.Button == MouseButtons.Left) { DoSomething(); }——————————————————————DoubleClick事件的e参数是EventArgs 而不是 MouseEventArgs吧? 呵呵,1 添加 控件的DoubleClick事件处理函数。2 处理代码大致如下。yzsb1118(我) 说的对,确实很明显。private void Form1_DoubleClick(object sender, System.EventArgs e){ switch(e.Button) { case MouseButtons.Left: //do something break; case MouseButtons.Middle: //do something break; case MouseButtons.Right: //do something break; default: //do something break; }} 回复人: HuaGer(华戈) ( ) 信誉:100 2005-07-17 13:02:00 得分: 0 呵呵,1 添加 控件的DoubleClick事件处理函数。2 处理代码大致如下。yzsb1118(我) 说的对,确实很明显。private void Form1_DoubleClick(object sender, System.EventArgs e){ switch(e.Button)______________________________________________________可是 System.EventArgs 根本没有 button成员啊? 呵呵,大意了。没有实践就没有发言权,我刚才测试了一下不行。只有mousedown 和mouseup中有button的类型,在里面设置一个变量来记录还可以,单独的double还是没办法。不过也挺好控制的呀,并没有太多的代码,就设置一个变量就可以呀。 主要是充分利用一点,在DoubleClick之前肯定是 有click,MouseUp,MouseDown事件,肯定会触发的。我们只要在最后一个事件里面设定一个变量,在DoubleClick里面判断就可以咯MouseButtons m_MB;private void Form1_MouseUp(object sender, System.EventArgs e){ m_MB = e.Button; }private void Form1_DoubleClick(object sender, System.EventArgs e){ switch(m_MB) { case MouseButtons.Left: //do something break; default: //do something break; }}这样子应该可以咯,我试过。 主要是充分利用一点,在DoubleClick之前肯定是 有click,MouseUp,MouseDown事件,肯定会触发的。————————————————————看来只能是这样了,谢谢你 系统设置未 初始化 dgv checkbox 新手问题,怎么多个控件触发同一事件? winform中如何设置datagrid中的字体? 菜鸟求救 c#反射窗体控件问题 C#网络编程 视频聊天 类似QQ DataGridView问题请教!!!???如何编程实现DataGridView的指定Cell的Click事件! 如何把word转换成pdf格式 求助 怎样定义这样一个结构 C#的winform如何做到与网站中的PHP文件进行交互? 邮件的标题和内容部份中文都是用的 bit8 进行编码 如果对中文字符进行解码,在线?(100) IT培训知多少
{
DoSomething();
}
{
DoSomething();
}——————————————————————DoubleClick事件的e参数是EventArgs 而不是 MouseEventArgs吧?
1 添加 控件的DoubleClick事件处理函数。
2 处理代码大致如下。yzsb1118(我) 说的对,确实很明显。private void Form1_DoubleClick(object sender, System.EventArgs e)
{
switch(e.Button)
{
case MouseButtons.Left:
//do something
break;
case MouseButtons.Middle:
//do something
break;
case MouseButtons.Right:
//do something
break;
default:
//do something
break;
}
}
呵呵,
1 添加 控件的DoubleClick事件处理函数。
2 处理代码大致如下。yzsb1118(我) 说的对,确实很明显。private void Form1_DoubleClick(object sender, System.EventArgs e)
{
switch(e.Button)______________________________________________________可是 System.EventArgs 根本没有 button成员啊?
只有mousedown 和mouseup中有button的类型,在里面设置一个变量来记录还可以,单独的double还是没办法。不过也挺好控制的呀,并没有太多的代码,就设置一个变量就可以呀。
我们只要在最后一个事件里面设定一个变量,在DoubleClick里面判断就可以咯
MouseButtons m_MB;
private void Form1_MouseUp(object sender, System.EventArgs e)
{
m_MB = e.Button;
}private void Form1_DoubleClick(object sender, System.EventArgs e)
{
switch(m_MB)
{
case MouseButtons.Left:
//do something
break;
default:
//do something
break;
}
}
这样子应该可以咯,我试过。
————————————————————
看来只能是这样了,谢谢你