Sdílet prostřednictvím


Postupy: Volání obslužné rutiny události (Visual Basic)

Událost je akce nebo výskyt – jako je například myš klepnutím nebo limit úvěru překročen – některé součásti programu, a pro které můžete zapsat kód, je rozpoznán reagovat.Obslužné rutiny události je kód zapsat reagovat na události.

Obslužné rutiny události v Visual Basic je Sub postup.Však není volání obvykle stejný způsobem jako ostatní Sub postupy.Místo toho určit postup jako obslužnou rutinu události.Lze provést buď s Handles – Klauzule (Visual Basic) klauzule a WithEvents (Visual Basic) proměnné, nebo AddHandler – příkaz.Použití Handles klauzule je výchozí způsob, jak deklarovat obslužné rutiny události v Visual Basic.Toto je způsob, jakým obslužné rutiny událostí jsou zapsány návrháři při aplikaci v integrované vývojové prostředí (IDE).AddHandler Příkaz je vhodný pro zvýšení události dynamicky za běhu.

Při výskytu události Visual Basic automaticky volá proceduru obslužnou rutinu události.Jakýkoli kód, který má přístup k události může způsobit jeho provedením dojít RaiseEvent – příkaz.

Stejné události lze přidružit více obslužnou rutinu události.V některých případech lze oddělit popisovač z události.Další informace naleznete v tématu Události (Visual Basic).

Volání pomocí úchytů a WithEvents zpracování události

  1. Zkontrolujte, zda je událost deklarována s Event – příkaz.

  2. Deklarovat objektové proměnné v modulu třídy nebo úrovně použití WithEvents (Visual Basic) klíčové slovo.As Klauzule pro tuto proměnnou musí určit třídu, která vyvolá událost.

  3. V prohlášení o zpracování událostí Sub postup, přidat Handles – Klauzule (Visual Basic) klauzule, která určuje, WithEvents proměnné a název události.

  4. Při výskytu události Visual Basic automaticky zavolá Sub postup.Pomocí kódu RaiseEvent prohlášení k události dojít.

    Následující příklad definuje událost a WithEvents proměnné odkazující na třídu, která vyvolá událost.Zpracování událostí Sub postup používá Handles klauzule určit třídu a zpracovává události.

    Public Class raisesEvent
        Public Event somethingHappened()
        Dim WithEvents happenObj As New raisesEvent
        Public Sub processHappen() Handles happenObj.somethingHappened
            ' Insert code to handle somethingHappened event. 
        End Sub 
    End Class
    

Volání pomocí AddHandler zpracování události

  1. Zkontrolujte, zda je událost deklarována s Event prohlášení.

  2. Spuštění AddHandler – příkaz dynamicky připojit zpracování událostí Sub proceduru události.

  3. Při výskytu události Visual Basic automaticky zavolá Sub postup.Pomocí kódu RaiseEvent prohlášení k události dojít.

    Následující příklad definuje Sub postup zpracování Closing události formuláře.Poté použije AddHandler – příkaz k přidružení catchClose postup jako obslužnou rutinu události pro Closing.

    ' Place these procedures inside a Form class definition. 
    Private Sub catchClose(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs)
        ' Insert code to deal with impending closure of this form. 
    End Sub 
    Public Sub formOpened()
        AddHandler Me.Closing, AddressOf catchClose
    End Sub
    

    Obslužné rutiny události z události můžete oddělit provedením RemoveHandler – příkaz.

Viz také

Úkoly

Postupy: Vytvoření procedury (Visual Basic)

Postupy: Volání procedury, která nevrátí hodnotu (Visual Basic).

Referenční dokumentace

Sub – příkaz (Visual Basic)

AddressOf – operátor (Visual Basic)

Koncepty

Procedury v jazyce Visual Basic

Sub – procedury (Visual Basic)