EvtFocusTerm
EvtFocusTerm
Ereignis vor dem Verlassen des Objekts
Details
- Name: Typ Beschreibung
- aEvt:
eventEreignisinformationen - aFocusObject:
handleObjekt, das den Fokus erhalten wird - Resultat:
logicEingabeobjekt verlassen? - Siehe: Liste , Objekte ,
EvtFocusInit,EvtFocusCancel, Ereignisbefehle
Die Funktion wird unmittelbar, nachdem das Objekt den Eingabe-Fokus verliert, aufgerufen.
Definition des Funktionskopfes:
sub EvtFocusTerm
(
aEvt : event; // Ereignis
aFocusObject : handle; // Objekt, das den Fokus bekommt
)
: logic; // Eingabeobjekt verlassen?
{
return(true);
}
aEvt
Die Funktion hat einen Übergabeparameter vom Typ event und einen Übergabeparameter vom Typ handle. In aEvt wird unter anderem der Deskriptor des auslösenden Objekts, d. h. das Objekt, in dem die Ereignisfunktion eingetragen wurde, übergeben.
aFocusObject
aFocusObject enthält den Deskriptor des Objekts, das als nächsten den Fokus erhalten wird. Der Übergabeparameter hat den Wert 0, wenn das Zielobjekt nicht ermittelt werden konnte, weil es zum Beispiel in einer anderen Applikation liegt.
Resultat
Mit Hilfe des Rückgabewerts bei diesem Ereignis kann in einem Eingabe-Objekt verblieben werden. Bei false als Rückgabewert darf das Objekt nicht verlassen werden und das Ereignis EvtFocusCancel wird ausgelöst. Bei true darf das Objekt verlassen werden.
Falls abgefragt werden möchte, welche Taste zum Verlassen des Objekts verwendet wurde, kann dies mit Hilfe von WinInfo (..., _WinFocusKey ) in diesem Ereignis ermittelt werden.
Über die Ereignisse EvtFocusTerm und EvtFocusCancel kann eine individuelle Feldkontrolle eingerichtet werden. Üblicherweise wird aber eine Kontrolle der Eingaben beim Verlassen eines Dialogs oder bei einer anderen Benutzeraktion durchgeführt. Es ist zu beachten, dass das Ereignis EvtFocusTerm auch beim Taskwechsel aufgerufen wird. Innerhalb dieses Ereignisses dürfen keine Dialoge oder Messageboxen aufgerufen werden. Der Fokus wird in den Dialog übertragen. Nach dem Schließen des Dialoges steht der Fokus wieder in seinem ursprünglichen Objekt und das Ereignis würde wieder aufgerufen werden, sobald das Objekt wieder verlassen wird.