Operador AddressOf (Visual Basic)

Cria uma instância delegada que faz referência ao procedimento específico.

Sintaxe

AddressOf procedurename  

Partes

procedurename
Obrigatórios. Especifica o procedimento a ser referenciado pelo delegado recém-criado.

Comentários

O operador AddressOf cria um delegado que aponta para o sub ou função especificado por procedurename. Quando o procedimento especificado é um método de instância, o delegado se refere à instância e ao método. Em seguida, quando o delegado é invocado, o método especificado da instância especificada é chamado.

O operador AddressOf pode ser usado como operando de um construtor delegado ou em um contexto no qual o tipo do delegado pode ser determinado pelo compilador.

Exemplo 1

Este exemplo usa o operador AddressOf com o objetivo de designar um delegado para manipular o evento Click de um botão.

' Add the following line to Sub Form1_Load().
AddHandler Button1.Click, AddressOf Button1_Click

Exemplo 2

O exemplo a seguir usa o operador AddressOf para designar a função de inicialização para um thread.

Public Sub CountSheep()
    Dim i As Integer = 1 ' Sheep do not count from 0.
    Do While (True) ' Endless loop.
        Console.WriteLine("Sheep " & i & " Baah")
        i = i + 1
        System.Threading.Thread.Sleep(1000) 'Wait 1 second.
    Loop
End Sub

Sub UseThread()
    Dim t As New System.Threading.Thread(AddressOf CountSheep)
    t.Start()
End Sub

Confira também