C# 鼠标事件详解
1、首先,新建如图窗体程序,设计如图。用6个label稍后统计事件数。中间一个文本框。

3、然后,点击窗体,添加窗体的事件处理函数。(添加到控件类似)按照如图方式编写MouseUp和MouseDown的事件处理函数。同理添加Enter,Leave,Hover,Move的次数统计。

4、运行效果如图Gif。可见:当鼠标(不分左右键)在窗体上按下/松开,触发MouseDown/Up;当鼠标进入窗体客户区域(不包括窗体边框/文本框/Label控件,文本框和Label控件相当于挖出),就触发MouseEnter和MouseLeave;当鼠标在窗体客户区移动就会触发Move;当鼠标进入窗体客户区并静止,悬停在窗口上触发Hover。

6、运行效果如图。鼠标左键或者右键快速的Click同一地方两次会触发DoubleClick,只是单击鼠标某处会触发Click。所以,要想区分左右键双击,可以使用MouseClick和Mous髫潋啜缅eDoubleClick,通过参数e判断鼠标按键。
