AppEvent()
Allgemeines
Die Funktion AppEvent() entnimmt der Event-Warteschlange des aktiven Threads das nächste Ereignis (Event), zusammen mit weiteren Parametern, die zur Abarbeitung des Events erforderlich sind.
AppEvent() ist das Herzstück eines event-orientierten Programms.
Syntax
AppEvent(@mp1, @mp2, @oXbp, nTimeOut) --> nEvent
Parameter
<mp1>: Message Parameter 1, muss by reference übergeben werden. Der Inhalt beim Aufruf ist irrelevant, da der Parameter als Platzhalter für den ersten Message Parameter des Events dient. Sein Inhalt und Feldtyp ist abhängig vom jeweiligen Event.
<mp2>: Message Parameter 2, muss by reference übergeben werden. Der Inhalt beim Aufruf ist irrelevant, da der Parameter als Platzhalter für den ersten Message Parameter des Events dient. Sein Inhalt und Feldtyp ist abhängig vom jeweiligen Event.
<oXbp>: Xbase-Part, muss by reference übergeben werden. Der Inhalt beim Aufruf ist irrelevant, da der Parameter als Platzhalter für das Xbase-Part, auf das sich das Event bezieht, dient.
<nTimeOut>: gibt in Millisekunden an, nach welcher Zeit ohne Event das Warten beendet werden soll. Greift dieser Parameter, wird xbe_None als Ergebnis von AppEvent() zurückgegeben.
Querverweise
benötigte DLLs bzw. Include-Dateien
AppEvent.ch
Die Funktion AppEvent() gehört zu den grundsätzlich verfügbaren Funktionen und benötigt keine explizit benannte DLL. Enthalten ist die Funktion in XppRT1.DLL.
Besonderheiten
VIO Anwendungen
In als reinen Text-Modus gelinkten Programmen liefert AppEvent() nur Ereignisse der xbeK_ (Tastatur) und xbeM_ (Maus) Gruppen zurück.
Damit Maus-Events empfangen werden, muss über SetMouse() die Nutzung der Maus aktiviert werden.
Für VIO Programme sind die Parameter mp1, mp2 und oXbp optional.
Hybrid Anwendungen
Hybrid-Anwendungen basieren auf einem XbpCRT()-Fenster und empfangen alle Events, wobei auch hier die Benutzung der Maus über SetMouse() aktiviert werden muss.
Solange keine Xbase-Parts Verwendung finden, sind die Parameter mp1, mp2 und oXbp optional.
Anwendungsbeispiel
Siehe hierzu: Event-Loop