In Microsoft Visual Basic ist ein Ereignis eine Nachricht, die von einem Objekt innerhalb eines Programms an die Hauptprogrammschleife gesendet wird und diese darüber informiert, dass etwas passiert ist. Dieses "Etwas" kann sehr unterschiedlich sein, von einem ablaufenden Timer bis hin zu einem Mausklick seitens des Benutzers. Das Programm kann dieses Ereignis erfassen und die darin enthaltenen Informationen verwenden, um Entscheidungen über weitere Operationen zu treffen.
Beispiele
Visual Basic ist mit einer großen Menge vorcodierter Ereignisse vorinstalliert, Benutzer können jedoch auch ihre eigenen schreiben. Diese Veranstaltungen decken nahezu jeden Aspekt des Programmbetriebs und der Interaktion ab. Einige Ereignisse im Zusammenhang mit der Interaktion zwischen dem Mauszeiger und einem Steuerelement in einem Formular (wie z Taste) umfassen MouseClick, MouseDoubleClick, MouseEnter, MouseLeave, MouseWheel, MouseMove und MausHover. Ereignisse erhalten im Allgemeinen sehr intuitive Namen, um das Lesen des Visual Basic-Codes zu erleichtern.
Video des Tages
Auslösen
Ereignisse können durch eine Vielzahl von Situationen ausgelöst werden. Viele Ereignisse sind das Ergebnis von Benutzerinteraktionen wie Mausbewegungen oder Tastatureingaben. Das Windows-Betriebssystem sendet auch Ereignisse und benachrichtigt das Programm, wenn es minimiert wird oder wenn ein anderes Fenster es überlappt. Objekte können eigene Ereignisse auslösen, beispielsweise wenn eine Variable einen bestimmten Wert erreicht hat. Schließlich können Ereignisse in Gang gesetzt werden, indem sie gezielt darauf programmiert werden, durch sogenanntes "Raising".
Erklärung
Neue Ereignisse werden mithilfe eines Deklarationsbefehls erstellt. Der Code dafür sieht im Allgemeinen wie folgt aus:
Öffentliches Ereignis OptionChanged (ByVal Name As String, ByVal Number As Integer)
Dieses Beispielereignis müsste manuell programmiert werden, um beim Ändern einer Option ausgelöst zu werden, und würde zwei Werte an das Programm senden: den Namen der geänderten Option und den Wert, auf den sie geändert wurde einstellen.
Raising-Events
Das Auslösen eines Ereignisses ist der Akt, es herbeizuführen. Dies kann mit einer einzigen Codezeile in Ihrem Programm erfolgen, wie zum Beispiel:
RaiseEvent OptionChanged("Länge", 28)
Dieser benachrichtigt dann das Programm über das stattfindende Ereignis und sendet die enthaltenen Informationen an eine Abwicklungsprozedur, falls vorhanden.
Handler
Ein Handler ist eine Prozedur, die das Programm aufruft, wenn ein bestimmtes Ereignis eintritt. Der Handler kann dann auf die Informationen reagieren, sie verarbeiten oder Informationen an den Benutzer senden. Zuerst müssen das Ereignis und sein Handler von Hand verknüpft werden, damit das Programm weiß, dass das eine das andere aufrufen soll. Um beispielsweise unserem OptionChanged-Ereignis einen Handler hinzuzufügen, ist etwa Folgendes erforderlich:
AddHandler-Objekt OptionChanged, Adresse von mir. OptionChangedHandler
Danach kann der Handler selbst hinzugefügt werden. Ein Handler für OptionChanged könnte wie folgt aussehen:
Sub OptionChangedHandler (ByVal Name As String, ByVal Number As Integer) MsgBox("Der Wert für " & Name. ToString & "wurde geändert!) End Sub