亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

VB.NET中怎么實現編程事件

發布時間:2021-08-11 15:43:09 來源:億速云 閱讀:128 作者:Leah 欄目:編程語言

VB.NET中怎么實現編程事件,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

看一個關于VB.NET編程的例子,在這里呢我使用另一種方法來說明當你建立和注冊一個事件處理程序時到底發生了什么事情。一旦你明白事情是怎么回事,你也許會感激使用了更簡潔的語法實現了相同的目標,一起來看看吧:

'建立銀行帳號對象  Dim account1 As New BankAccount()  '注冊事件處理程序  AddHandler account1.LargeWithdraw, AddressOf AccountHandlers.LogWithdraw  AddHandler account1.LargeWithdraw, AddressOf AccountHandlers.GetApproval

因為AddHandler語句期待一個委托對象作為第二個參數,你能使用速記語法--AddressOf操作符后緊跟目標處理方法的名字。當Visual Basic .NET編譯器看到該語法時,它接著產生額外的代碼來建立作為事件處理程序服務的委托對象。VB.NET編程語言中的AddHandler語句的補充是RemoveHandler語句。RemoveHandler需要的參數與AddHandler的相同,它的效果相反。它通過事件源調用remove_LargeWithdraw方法從已注冊的處理方法列表中刪除目標處理方法。

Dim account1 As New BankAccount()  '注冊事件處理程序  AddHandler account1.LargeWithdraw, AddressOf AccountHandlers.LogWithdraw  '刪除事件處理程序注冊  RemoveHandler account1.LargeWithdraw, AddressOf AccountHandlers.LogWithdraw

你已經看到了實現使用事件的回調設計需要的所有步驟了。代碼顯示了一個完整的應用程序,在該程序中已經注冊了兩個事件處理程序從BankAccount對象的LargeWithdraw事件接收回調通知。

Delegate Sub LargeWithdrawHandler(ByVal Amount As Decimal)  Class BankAccount  Public Event LargeWithdraw As LargeWithdrawHandler  Sub Withdraw(ByVal Amount As Decimal)  '如果需要的話就發送通知  If (Amount > 5000) Then  RaiseEvent LargeWithdraw(Amount)  End If  '執行撤消  End Sub  End Class  Class AccountHandlers  Shared Sub LogWithdraw(ByVal Amount As Decimal)  '把撤消信息寫入日志文件  End Sub  Shared Sub GetApproval(ByVal Amount As Decimal)  '阻塞直到管理者批準  End Sub  End Class  Module MyApp  Sub Main()  '建立銀行帳號對象  Dim account1 As New BankAccount()  '注冊事件處理程序  AddHandler account1.LargeWithdraw, _  AddressOf AccountHandlers.LogWithdraw  AddHandler account1.LargeWithdraw, _  AddressOf AccountHandlers.GetApproval  '做一些觸發回調的事情  account1.Withdraw(5001)  End Sub  End Module


關于VB.NET中怎么實現編程事件問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

无为县| 怀集县| 泽普县| 乳山市| 平安县| 二连浩特市| 巩留县| 博罗县| 铁岭市| 日喀则市| 米林县| 中方县| 扶余县| 普陀区| 手游| 河南省| 博乐市| 饶阳县| 抚远县| 乳源| 仙游县| 广饶县| 蓬溪县| 平利县| 正定县| 长岭县| 南乐县| 颍上县| 溧水县| 临猗县| 故城县| 钦州市| 涟水县| 柏乡县| 天祝| 甘南县| 房山区| 德钦县| 阳信县| 西乌珠穆沁旗| 汾阳市|