Mi faccio un esempio semplice semplice...
Public Class Form1
Delegate Sub delegato()
Dim metodo As delegato
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
metodo = AddressOf fai
metodo()
metodo = AddressOf esegui
metodo()
End Sub
Sub esegui()
MsgBox("eseguo")
End Sub
Sub fai()
MsgBox("faccio")
End Sub
End Class
Praticamente delegato sarebbe una specie di puntatore che può puntare a tutti i metodi con la stessa firma.Me ne faccio un altro con una firma un po' più complicata.
Public Class Form1
Delegate Sub delegato(ByVal stringa As String)
Dim metodo As delegato
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
metodo = AddressOf fai
metodo("faccio")
metodo = AddressOf esegui
metodo("eseguo")
End Sub
Sub esegui(ByVal stringa As String)
MsgBox(stringa)
End Sub
Sub fai(ByVal stringa As String)
MsgBox(stringa)
End Sub
End Class
In questo caso la firma è diversa in quanto c'è il parametro stringa.
Nessun commento:
Posta un commento