CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
【经验总结】不能实施并行处理的情况 浅谈并行编程中的任务分解模式
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

如何判断DoubleClick事件是左键还是右键双击引发的?

楼主Roaming_Sheep(Roaming Sheep)2005-07-16 23:42:58 在 .NET技术 / C# 提问

控件的DoubleClick事件,对左键双击和右键双击都有响应  
   
  不使用MouseDown、MouseUp,能不能在DoubleClick事件处理的地方就简单的判断出是左键双击还是右键双击?  
   
  或者有没有方法只允许左键双击引发DoubleClick事件?  
  问题点数:20、回复次数:11Top

1 楼Oceanson(洋之光)回复于 2005-07-17 00:16:56 得分 0

if(e.Button   ==   MouseButtons.Left)  
      {  
            DoSomething();  
        }Top

2 楼Roaming_Sheep(Roaming Sheep)回复于 2005-07-17 00:25:31 得分 0

if(e.Button   ==   MouseButtons.Left)  
      {  
            DoSomething();  
        }  
   
  ——————————————————————  
   
  DoubleClick事件的e参数是EventArgs   而不是   MouseEventArgs吧?Top

3 楼Roaming_Sheep(Roaming Sheep)回复于 2005-07-17 09:38:56 得分 0

dingTop

4 楼yzsb1118(我)回复于 2005-07-17 10:21:04 得分 0

这也太明显了吧!Top

5 楼Roaming_Sheep(Roaming Sheep)回复于 2005-07-17 12:30:22 得分 0

这也太明显了吧!  
  ________________  
   
  到底怎么判断?Top

6 楼HuaGer(华戈)回复于 2005-07-17 13:02:28 得分 0

呵呵,  
  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;  
        }  
  }Top

7 楼Roaming_Sheep(Roaming Sheep)回复于 2005-07-17 14:51:02 得分 0

回复人:   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成员啊?Top

8 楼HuaGer(华戈)回复于 2005-07-17 15:41:23 得分 0

呵呵,大意了。没有实践就没有发言权,我刚才测试了一下不行。  
  只有mousedown   和mouseup中有button的类型,在里面设置一个变量来记录还可以,单独的double还是没办法。  
   
  不过也挺好控制的呀,并没有太多的代码,就设置一个变量就可以呀。Top

9 楼HuaGer(华戈)回复于 2005-07-17 18:42:42 得分 20

主要是充分利用一点,在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;  
        }  
  }  
  这样子应该可以咯,我试过。Top

10 楼Roaming_Sheep(Roaming Sheep)回复于 2005-07-19 14:09:12 得分 0

主要是充分利用一点,在DoubleClick之前肯定是   有click,MouseUp,MouseDown事件,肯定会触发的。  
  ————————————————————  
  看来只能是这样了,谢谢你Top

11 楼dchl(吊儿郎当)回复于 2005-10-31 11:23:36 得分 0

谢谢HuaGer(华戈)Top

相关问题

  • 鼠标左键双击突然变成了“右键-->属性”
  • 如何判断鼠标双击时,是左键,还是右键?
  • 怎样区分鼠标左键、右键双击事件?
  • 判断应用程序是左键单击,双击,右键单机打开?
  • 如何判定双击DataGrid的是鼠标左键还是右键
  • 如何模拟鼠标左键的双击事件和鼠标右键的双击事件?
  • 如何实现鼠标双击右键放大图片,鼠标双击左键缩小图片?
  • Hex(X) = "1E3C"是不是单击鼠标右键的意思?如果是,左键和双击是什么?
  • 我用图片框控件,可是它的双击事件怎么不能区别左键还是右键呢?
  • 请教在TREEVIEW控件的NODECLICK事件中如何判断单击结点的是左键还是右键?如何判断双击?

关键词

  • 控件
  • 代码
  • doubleclick
  • 双击
  • mousebuttons
  • 左键
  • 右键
  • 事件
  • mouseup
  • 判断

得分解答快速导航

  • 帖主:Roaming_Sheep
  • HuaGer

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
惹火投票。。火热进行中...
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
CSDN网站24小时值班电话:13552009689
Copyright © 2000-2009, CSDN.NET, All Rights Reserved
GongshangLogo