Zum Hauptinhalt springen

EvtLstEditCommit

EvtLstEditCommit

Edit-Objekt einer Liste verlassen

Details

Dieses Ereignis wird aufgerufen, wenn das Edit-Feld in einer Liste verlassen werden soll. Hier kann entschieden werden, ob der eingetragene Wert in die Liste übernommen werden soll.

info

Ein Eintrag, der in die Liste übernommen wird, ist nicht automatisch in der Datenbank gespeichert. Die Speicherung von Datensätzen muss in dem Ereignis EvtLstEditFinished erfolgen.

Definition des Funktionskopfes:

sub EvtLstEditCommit
(
aEvt : event; // Ereignis
aColumn : handle; // Spalte
aKey : int; // Taste
aFocusObject : handle; // Deskriptor des Fokus-Objektes
)
: logic; // Wert in Liste übernehmen?
{
return(true);
}

aEvt

In diesem Parameter vom Typ event wird unter anderem der Deskriptor des auslösenden Objektes, d. h. das Objekt, in dem die Ereignisfunktion eingetragen wurde, übergeben. Ausgehend von diesem Deskriptor kann mit der Anweisung WinInfo (..., _WinLstEditObject ) das Eingabe-Objekt ermittelt werden.

aColumn

In diesem Parameter wird der Deskriptor der Spalte übergeben, in der die Liste editiert wurde.

aKey

Hier steht der Code der Taste, mit der das Edit-Objekt verlassen wurde. Der Wert kann mit den symbolischen Konstanten für Tasten (_WinKey...) verglichen werden.

Wurde das Feld durch einen Klick mit der Maus verlassen, wird hier 0 übergeben.

aFocusObject

Wird das Edit-Objekt mit der Maus verlassen, wird hier der Deskriptor des Objekts, das als nächstes den Fokus erhält, übergeben. Befindet sich dieses Objekt nicht in der CONZEPT 16-Applikation, wird 0 übergeben.

Resultat

Der Rückgabewert der Funktion entscheidet, ob der eingetragene Wert in die Liste übernommen wird (true) oder nicht (false). Wurde beim Befehl WinLstEdit () die Option _WinLstEditClearChanged angegeben, wird bei einem Rückgabewert von true ebenfalls das Changed-Flag gesetzt. Das Changed-Flag wird bei dem Ereignis EvtLstEditFinished übergeben.

Beispiel:

sub EvtLstEditCommit
(
aEvt : event; // Ereignis
aColumn : handle; // Spalte
aKey : int; // Taste
aFocusObject : handle; // Deskriptor des Fokus-Objekts
) : logic; // Wert in Liste übernehmen?

{
return(aKey != _WinKeyEsc);
}