object sender,EventArgs e的一些講解(c#,0)
object sender,EventArgs e的一些講解(c#,0)
說的通俗一些,就是:
有一個叫做EventHandler 的傢伙,他會告訴你(主程式),有一些事情發生了:這個事情是誰導致的呢?是某個object型別物件導致的,它用Source或Sender來表示。這個事情是什麼事呢?e的內容就是事情的內容了。
至於Source和Sender,沒有區別,你想用哪個就用哪個,其實都是一樣的。
所以,我們在程式中的事件處理函式就是依賴於這個東西實現的:比方說你點了一個按鈕,程式怎麼知道應該用哪個函式來處理這個動作呢?那麼EventHandler 這個傢伙會告訴程式:"button1(sender)被點選(e)了,請呼叫對應的處理函式"。當然這個函式是誰,這個函式要做什麼,是由你自己寫的。
再深入一層,這個過程實際上就是:你的動作被windows捕獲,windows把這個動作作為系統訊息傳送給程式(可以看message結構),程式從自己的訊息佇列中不斷的取出訊息,並在訊息迴圈中尋找對應的處理方式,這時message結構中的類似於sender和e的東東就起到了載入程式使用正確的處理函式的作用。
歸根究底,這個sender和e及其一整套的處理方式,只不過是windows訊息機制的另外一種表現罷了。
是C#.NET的.
object sender 發出事件的物件
System.EventArgs e 物件中的資料
如果是按鈕button的話,那sender就是那個button,
e是事件引數,在某些事件裡,e用處不大,比如在MouseEventArgs的Mouse事件中,可以看到e包括mouse的座標值等,以供你的程式使用。
有一個叫做EventHandler 的傢伙,他會告訴你(主程式),有一些事情發生了:這個事情是誰導致的呢?是某個object型別物件導致的,它用Source或Sender來表示。這個事情是什麼事呢?e的內容就是事情的內容了。
至於Source和Sender,沒有區別,你想用哪個就用哪個,其實都是一樣的。
所以,我們在程式中的事件處理函式就是依賴於這個東西實現的:比方說你點了一個按鈕,程式怎麼知道應該用哪個函式來處理這個動作呢?那麼EventHandler 這個傢伙會告訴程式:"button1(sender)被點選(e)了,請呼叫對應的處理函式"。當然這個函式是誰,這個函式要做什麼,是由你自己寫的。
再深入一層,這個過程實際上就是:你的動作被windows捕獲,windows把這個動作作為系統訊息傳送給程式(可以看message結構),程式從自己的訊息佇列中不斷的取出訊息,並在訊息迴圈中尋找對應的處理方式,這時message結構中的類似於sender和e的東東就起到了載入程式使用正確的處理函式的作用。
歸根究底,這個sender和e及其一整套的處理方式,只不過是windows訊息機制的另外一種表現罷了。
是C#.NET的.
object sender 發出事件的物件
System.EventArgs e 物件中的資料
如果是按鈕button的話,那sender就是那個button,
e是事件引數,在某些事件裡,e用處不大,比如在MouseEventArgs的Mouse事件中,可以看到e包括mouse的座標值等,以供你的程式使用。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/219982/viewspace-495625/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 整理Object的一些方法Object
- EMC的0x720e問題解決方法
- C#中的虛方法(virtual)例項講解C#
- C# json to dynamic objectC#JSONObject
- c#編譯器對byte型別的一些規則 (轉0C#編譯型別
- 從0到1用故事講解「動態代理」
- 給妹子講python-S01E22詳解神奇的裝飾器Python
- pytorch 踩坑,TypeError: expected seqence object with len>_0 or a single integer_typeerror: expected sequence object with len __ 0PyTorchErrorObject
- 開源Java物件比較器java-object-diff實戰講解Java物件Object
- 介面返回[object,Object]解決方法Object
- 0.爬蟲 urlib庫講解 urlopen()與Request()爬蟲
- 給妹子講python-S01E05字串的基本用法詳解Python字串
- 0x0000007e藍屏程式碼是什麼意思 0x0000007e藍屏程式碼怎麼解決
- win10藍屏程式碼0xc000000e解決方法_win10藍屏程式碼0xc000000e怎麼修復Win10
- zabbix_sender自定義監控
- 推薦系統實踐 0x0e LS-PLM
- 一些常見的C#類C#
- C#操作Access的一些小結C#
- python函式每日一講 - delattr(object, name)Python函式Object
- python函式每日一講 - callable(object)Python函式Object
- 給妹子講python-S01E15詳解python迭代環境Python
- c# {0}引數值C#
- 給妹子講python-S01E21函式引數的匹配與解包詳解Python函式
- JS中Object的API詳解JSObjectAPI
- 詳解object detection中的mAPObject
- Object.defineProperty的用法詳解Object
- 詳解Javascript中的Object物件JavaScriptObject物件
- AT_abc347_e的題解
- Cannot decode object of class Employee for key (NS.object.0); the class may be defined in source cod...Object
- Business Object Validation Using Attributes in C#ObjectC#
- 專案0到1的一些感想
- 0x0000007e藍色畫面程式碼是什麼意思 0x0000007e藍色畫面程式碼怎麼解決
- 訊息通知 使用 [ Web-msg-sender]Web
- c# 一些警告的處理方法C#
- 給妹子講python-S01E03元組的使用Python
- win10藍色畫面程式碼0xc000000e解決方法_win10藍色畫面程式碼0xc000000e怎麼修復Win10
- Newman的使用講解
- Owner,Parent,Self,Sender,Clientheight,Height(轉)client