Zum Hauptinhalt springen

EvtLstEditStartGroup

EvtLstEditStartGroup

Gruppe eines RecViews ändern

Details

Das Ereignis wird ausgelöst, wenn ein Eintrag in einem RecView -Objekt editiert werden soll. Das Editieren wird durch die in EditKeyStart und EditMouseStart definierten Tastatur- und Mausaktionen ausgelöst. Hier können Vorbereitungen zum Editieren des Datensatzes getroffen oder das Editieren für alle oder bestimmte Items der Gruppe unterbunden werden.

Definition des Funktionskopfes:

sub EvtLstEditStartGroup
(
aEvt : event; // Ereignis
aGroup : handle; // Gruppe
aRecBuf : handle; // Datensatzpuffer
aResult : int; // Eingabe-Resultat
)
: logic; // Wird nicht ausgewertet
{
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.

aGroup

In diesem Parameter wird der Deskriptor der editierten Gruppe übergeben. Durch Setzen der Eigenschaften SelectorItem und SelectorSubItem können die Eigenschaften eines beliebigen Items bzw. SubItems der Gruppe gelesen werden.

aRecBuf

Hier wird der Datensatzpuffer mit den aktuellen Feldinhalten des Datensatzes übergeben.

aResult

Über diesen Parameter kann ein Wert zurückgegeben werden, der definiert, ob der Editiervorgang gestartet (_WinRvwGroupEditContinue) oder abgebrochen werden soll (_WinRvwGroupEditAbort). Standardmäßig ist aResult mit _WinRvwGroupEditContinue vorbelegt. Die Rückgabe von dieser Konstanten führt zum Auslösen des Ereignisses EvtLstEditStartItem. Wird _WinRvwGroupEditAbort zurückgegeben, wird anschließend das Ereignis EvtLstEditEndGroup aufgerufen.

Resultat

Der Rückgabewert der Funktion wird nicht ausgewertet.

Besonderheiten

info

Während dieses Ereignisses ist eine Veränderung des RecView -Objektes nicht zulässig. Eigenschaften und Befehle, die das RecView , die Columns oder SubColumns verändern würden, lösen den Laufzeitfehler _ErrHdlInvalid aus. Das Abfragen von Eigenschaften sowie der Aufruf von WinInfo () sind zulässig.

Beispiel:

sub EvtLstEditStartGroup
(
aEvt : event; // Ereignis
aGroup : handle; // Gruppe
aRecBuf : handle; // Datensatzpuffer
aResult : int; // Eingabe-Resultat
)
: logic; // Wird nicht ausgewertet

{
// Datensatz während des Editiervorgangs sperren
aRecBuf->RecRead(0, _RecID | _RecLock | _RecNoLoad, aRecBuf->RecInfo(_RecID));

return(true);
}