標題:
VB.NET 委派(Delegate) 事件(Event)
[打印本頁]
作者:
narita
時間:
2011-9-6 00:46
標題:
VB.NET 委派(Delegate) 事件(Event)
委派(Delegate)
定義 Method 結構
定義
'定義委派
2 Public Delegate Sub sayHello(ByVal thing As String)
主程式
view sourceprint?01 Imports mod08
02
03 Module TestHelloWorldDelegate
04 Public Sub Main()
05 '建構委派
06 Dim handler As New sayHello(AddressOf engHelloWorld)
07 '呼喚(喚醒)-同步
08 handler.Invoke("eric")
09 End Sub
10
11 '給委派用的程序
12 Private Sub engHelloWorld(ByVal s As String)
13 System.Console.WriteLine(s + " Hello World!!!")
14 End Sub
15 End Module
類別層級
主程式 應用程式層級 (Event)
view sourceprint?01 Public Class HelloWorld
02 'Data field
03 Private _msg As String
04 '事件
05 Public Event myhandler As sayHello
06 '屬性
07 Public Property Msg() As String
08 Get
09 Return Me._msg
10 End Get
11 Set(ByVal value As String)
12 Me._msg = value
13 End Set
14 End Property
15
16 '引發事件的 method
17 Public Sub Rasing(ByVal s As String)
18 '引發事件->牽涉到應用系統所寫的事件程序(???)
19 RaiseEvent myhandler(s)
20 End Sub
21 End Class
view sourceprint?01 Module TestClassEvent
02
03 Public Sub Main()
04 '建構物件
05 Dim hello As New HelloWorld()
06 '建立事件程序
07 '管理員建立
08 Dim handler As New sayHello(AddressOf HelloWorld)
09 '聽物件的事件
10 AddHandler hello.myhandler, handler
11 '引發
12 hello.Rasing("eric")
13 End Sub
14
15 '事件程序
16 Private Sub HelloWorld(ByVal s As String)
17 System.Console.WriteLine(s + " 世界和平!!")
18 End Sub
19 End Module
mod08.rar
作者:
james.fu
時間:
2012-11-27 16:09
因為是剛入門學寫程式,不太清楚委派和事件的使用時機,不知道是否可以指導一下二者使用的差別?
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)