Klausul Handel (Visual Basic)

Menyatakan bahwa prosedur menangani peristiwa tertentu.

Sintaks

proceduredeclaration Handles eventlist

Generator

proceduredeclaration Deklarasi prosedur Sub untuk prosedur yang akan menangani acara.

eventlist Daftar peristiwa-peristiwa untuk ditangani proceduredeclaration, dipisahkan oleh koma. Peristiwa harus dinaikkan oleh kelas dasar untuk kelas saat ini, atau oleh objek yang dideklarasikan menggunakan kata kunci WithEvents.

Keterangan

Gunakan kata kunci Handles di akhir deklarasi prosedur agar dapat menangani peristiwa yang dimunculkan oleh variabel objek yang dideklarasikan menggunakan kata kunci WithEvents. Kata kunci Handles juga dapat digunakan dalam kelas turunan untuk menangani peristiwa dari kelas dasar.

Kata kunci Handles dan pernyataan AddHandler keduanya memungkinkan Anda menentukan bahwa prosedur tertentu menghandel peristiwa tertentu, tetapi ada perbedaannya. Gunakan kata kunci Handles saat menentukan prosedur untuk menentukan bahwa ia menghandel suatu peristiwa tertentu. Pernyataan AddHandler ini menyambungkan prosedur ke peristiwa sesuai durasi. Untuk informasi selengkapnya, lihat Pernyataan AddHandler.

Untuk peristiwa kustom, aplikasi memanggil aksesor peristiwa AddHandler saat menambahkan prosedur sebagai penanganan aktivitas. Untuk informasi selengkapnya tentang peristiwa kustom, lihat Pernyataan Peristiwa.

Contoh 1

Public Class ContainerClass
    ' Module or class level declaration.
    WithEvents Obj As New Class1

    Public Class Class1
        ' Declare an event.
        Public Event Ev_Event()
        Sub CauseSomeEvent()
            ' Raise an event.
            RaiseEvent Ev_Event()
        End Sub
    End Class

    Sub EventHandler() Handles Obj.Ev_Event
        ' Handle the event.
        MsgBox("EventHandler caught event.")
    End Sub

    ' Call the TestEvents procedure from an instance of the ContainerClass 
    ' class to test the Ev_Event event and the event handler.
    Public Sub TestEvents()
        Obj.CauseSomeEvent()
    End Sub
End Class

Contoh berikut menunjukkan bagaimana kelas turunan dapat menggunakan pernyataan Handles untuk menangani peristiwa dari kelas dasar.

Public Class BaseClass
    ' Declare an event.
    Event Ev1()
End Class
Class DerivedClass
    Inherits BaseClass
    Sub TestEvents() Handles MyBase.Ev1
        ' Add code to handle this event.
    End Sub
End Class

Contoh 2

Contoh berikut berisi dua penanganan aktivitas tombol untuk proyek Aplikasi WPF.

Private Sub Button1_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click
    MessageBox.Show(sender.Name & " clicked")
End Sub

Private Sub Button2_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button2.Click
    MessageBox.Show(sender.Name & " clicked")
End Sub

Contoh 3

Contoh berikut setara dengan contoh sebelumnya. eventlist dalam klausa Handles berisi peristiwa untuk kedua tombol.

Private Sub Button_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click, Button2.Click
    MessageBox.Show(sender.Name & " clicked")
End Sub

Lihat juga