C#中如何处理鼠标事件

在.NET框架下,使用C#编程时,如何为文本框、窗体等添加鼠标右键单击功能?文章介绍了通过设置控件的ContextMenu属性轻松实现上下文菜单,避免复杂的事件处理。
摘要由CSDN通过智能技术生成


  过去用 C++/MFC 开发程序时,常常为用户提供鼠标的右键单击功能,如今在 .NET 框架中使用 C#,也想在程序中提供鼠标右键单击功能,比如,在文本框、窗格、标签以及主窗口背景上使用鼠标右键。毕竟 C# 不是 C++/MFC,那么如何用 C# 处理鼠标事件呢?本文下面将专门探讨这个问题。
  
.NET 框架下编程是非常容易的一件事情,有时候容易得连 C++ 程序员想都想不到。这主要是因为用 C++ 编写代码常常需要硬工夫。所谓硬工夫,也就是很多细节都要自己考虑和处理。但使用 C# 则不然。如果你想显示上下文菜单,完全没有必要去和事件参合。只要设置控制的 ContextMenu 属性即可,就象下面这样:

      ContextMenu myContextMenu = ...
      myControl.ContextMenu = myContextMenu;     
就这么简单。只要按照上述方法设置好属性,当用户单击右键时,菜单便会自动显示出来。此外,如果你想进一步实现右键拖拽,这才涉及到事件处理。在 MFC 中,你会自然而然想到用 OnRButtonDown OnRButtonUp 实现,但是那不是 Windows 窗体( Forms )的工作方式。虽然许多窗口类确实提供了可以改写的虚拟函数来处理常用消息(如: Form.OnActivated Form.OnClosed ),但是在 .NET 框架中编程,你必须要学会用事件来思考,而且要了解一个类提供了哪些事件。下面这个表列出了被 Control 类提供的比较常用的事件:

(表一)

Click
HelpRequested
MouseLeave
ContextMenuChanged
Invalidated
MouseMove
DoubleClick
KeyDown
MouseUp
DragDrop
KeyPress
MouseWheel
DragEnter
KeyUp
Move
DragLeave
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值