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
Zkontrolujte, zda je událost deklarována s Event – příkaz.
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.
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.
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
Zkontrolujte, zda je událost deklarována s Event prohlášení.
Spuštění AddHandler – příkaz dynamicky připojit zpracování událostí Sub proceduru události.
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
AddressOf – operátor (Visual Basic)