注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

信息 灵感 创新

I? =Information,Inspiration,Innovation

 
 
 

日志

 
 
关于我

we are 5. Mathematics, Computation, Programming, Engineering, and Making fun of life.

网易考拉推荐

AutoCAD中的事件处理(二)  

2010-12-08 22:04:10|  分类: ObjectARX |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

事件的注册和注销

    事件编程可以简单地分成两个部分:事件发生的类和事件接收处理的类。事件发生的类就是说在这个类中触发了一个事件,但这个类并不知道哪个对象或方法将会接收到并处理它触发的事件,因此要在发送方和接收方之间存在一个媒介。这个媒介在.NET Framework中就是委托(delegate),通过委托完成了事件的注册。

只有先注册了事件之后才能调用相应的事件处理函数,这相当于告诉AutoCAD,我们对什么样的事件感兴趣,并且当这个事件发生的时候,它要做的事。当不再对这个事件感兴趣的时候,也可以注销该事件,这也可以释放系统的资源。

       注册事件使用+=操作符,而注销则使用-=操作符。注册事件就是把事件处理函数和事件捆绑起来,大部分的事件处理函数通常有两个形参,一个代表发送事件的对象,另一个则为事件的返回参数。

例如下面将会注册一个事件,即当系统变量发生改变的时候将会触发事件处理函数:

Application.SystemVariableChanged +=

new SystemVariableChangedEventHandler(MyHandler);

相应的,注销一个事件则为:

Application.SystemVariableChanged -=

 new SystemVariableChangedEventHandler(MyHandler);

其他的事件可以采用类似的方法实现注册和注销。

  评论这张
 
阅读(707)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016