怎样处理.NET开发事件_.Net教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:浅谈不同映射模式下的直线输出的效果问题
在做打印预览时:发现有趣的现象。 1:打印预览时宽度设置为0.1mm的线与设置为0.2mm的线显示效果一样,无区别。 打印机输出正常。 2:打印预览时:相同宽度的线有些显示有些不显示。 打印机输出正常。 仔细查看了一下,实际上是映射模式下的显示问题,鉴于映

DOTNET事件处理的步骤与实现

第一步:定义一个合适的委托

例:

以下为引用的内容:
delegate void MoveEventHandler(Object Sender,MoveEventArgs e)

注意:DotNet框架中的标准委托的定义如下:

以下为引用的内容:
Public delegate void EventHabdler(Object Sender,EventArgs e)

参数说明:

(1)Sender:表示消息的发送方;

(2)EventArgs:默认的消息处理类(不含附加数据)

(3)强烈建议使用标准的委托定义事件

第二步:定义一个合适的消息

由于标准的EventArgs类不包含附加数据,可继承此类,使该类包含与特定时间相关的信息,

以下为引用的内容:

如: Public class MoveEventArgs

{ Public int newPosition;

Public MoveEventArgs(int newPosition)

{

this.newPosition = newPosition

}

}

第三步:发送方声明事件并设置激发事件的代码

声明事件:Public event 委托类型与事件标识

必须使用Public声明事件,否则接收方就不能登记事件处理器,激发一个事件的代码如下:

以下为引用的内容:

if (事件标识 != null)

{

MoveEventArgs args = new MoveEventArgs(value1);

}

事件标识(this,args)(注意:次事件为dotnet标准事件)

另:建议直接使用标准系统委托 EventHandler

发送消息 MyEvent(this.args);

Public event EventHandler MyEvent;

声明一个事件变量

第四步:接收方登记事件处理器

事件处理器也是一种委托,将接收方要完成的功能加入到事件处理器,实现委托与事件的挂钩,一旦接收方收到发送的消息后,将立即执行该方法,实现功能。

Sender s1 = new Sender();声明一个发送方实例

s1.事件标识 = new定义的委托(要实现的功能代码)

将事件与要实现的功能挂钩。

第五步:等待事件的发生

注意:接收方只能处理登记完成了事件处理器后的事件,对于在事件处理器之前就发生的事件,接收方并不能处理。

分享:怎样在VC中实现淡入淡出的启动画面
一日心血来潮,想给启动画面来个淡入淡出,于是去谷歌(google)查了半天,无果。但知道了AnimiateWindow 这个函数。好吧 ,让我们开始吧。首先,请在需要淡入淡出 窗口 的cpp文件或者stdafx.h加入下列代码(注意要加在#include前面哦,否则没有作用哦)。 以下

来源:模板无忧//所属分类:.Net教程/更新时间:2009-06-30
相关.Net教程