怎樣處理.NET開發(fā)事件_.Net教程
推薦:淺談不同映射模式下的直線輸出的效果問題在做打印預(yù)覽時:發(fā)現(xiàn)有趣的現(xiàn)象。 1:打印預(yù)覽時寬度設(shè)置為0.1mm的線與設(shè)置為0.2mm的線顯示效果一樣,無區(qū)別。 打印機(jī)輸出正常。 2:打印預(yù)覽時:相同寬度的線有些顯示有些不顯示。 打印機(jī)輸出正常。 仔細(xì)查看了一下,實(shí)際上是映射模式下的顯示問題,鑒于映
DOTNET事件處理的步驟與實(shí)現(xiàn)
第一步:定義一個合適的委托
例:
| 以下為引用的內(nèi)容: delegate void MoveEventHandler(Object Sender,MoveEventArgs e) |
注意:DotNet框架中的標(biāo)準(zhǔn)委托的定義如下:
| 以下為引用的內(nèi)容: Public delegate void EventHabdler(Object Sender,EventArgs e) |
參數(shù)說明:
(1)Sender:表示消息的發(fā)送方;
(2)EventArgs:默認(rèn)的消息處理類(不含附加數(shù)據(jù))
(3)強(qiáng)烈建議使用標(biāo)準(zhǔn)的委托定義事件
第二步:定義一個合適的消息
由于標(biāo)準(zhǔn)的EventArgs類不包含附加數(shù)據(jù),可繼承此類,使該類包含與特定時間相關(guān)的信息,
| 以下為引用的內(nèi)容:
如: Public class MoveEventArgs { Public int newPosition; Public MoveEventArgs(int newPosition) { this.newPosition = newPosition } } |
第三步:發(fā)送方聲明事件并設(shè)置激發(fā)事件的代碼
聲明事件:Public event 委托類型與事件標(biāo)識
必須使用Public聲明事件,否則接收方就不能登記事件處理器,激發(fā)一個事件的代碼如下:
| 以下為引用的內(nèi)容:
if (事件標(biāo)識 != null) { MoveEventArgs args = new MoveEventArgs(value1); } |
事件標(biāo)識(this,args)(注意:次事件為dotnet標(biāo)準(zhǔn)事件)
另:建議直接使用標(biāo)準(zhǔn)系統(tǒng)委托 EventHandler
發(fā)送消息 MyEvent(this.args);
Public event EventHandler MyEvent;
聲明一個事件變量
第四步:接收方登記事件處理器
事件處理器也是一種委托,將接收方要完成的功能加入到事件處理器,實(shí)現(xiàn)委托與事件的掛鉤,一旦接收方收到發(fā)送的消息后,將立即執(zhí)行該方法,實(shí)現(xiàn)功能。
Sender s1 = new Sender();聲明一個發(fā)送方實(shí)例
s1.事件標(biāo)識 = new定義的委托(要實(shí)現(xiàn)的功能代碼)
將事件與要實(shí)現(xiàn)的功能掛鉤。
第五步:等待事件的發(fā)生
注意:接收方只能處理登記完成了事件處理器后的事件,對于在事件處理器之前就發(fā)生的事件,接收方并不能處理。
分享:怎樣在VC中實(shí)現(xiàn)淡入淡出的啟動畫面一日心血來潮,想給啟動畫面來個淡入淡出,于是去谷歌(google)查了半天,無果。但知道了AnimiateWindow 這個函數(shù)。好吧 ,讓我們開始吧。首先,請在需要淡入淡出 窗口 的cpp文件或者stdafx.h加入下列代碼(注意要加在#include前面哦,否則沒有作用哦)。 以下
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實(shí)例(可帶附件)
- js實(shí)現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實(shí)現(xiàn)
- Asp.Net 無刷新文件上傳并顯示進(jìn)度條的實(shí)現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(連接字符串的配置及獲取)
- asp.net頁面?zhèn)髦禍y試實(shí)例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實(shí)現(xiàn)分頁示例代碼
- 相關(guān)鏈接:
- 教程說明:
.Net教程-怎樣處理.NET開發(fā)事件
。