EvtLstEditActivate
EvtLstEditActivate
Aktivierung des Eingabeobjektes beim Ändern einer Gruppe im RecView
Details
- Name: Typ Beschreibung
- aEvt:
eventEreignisinformationen - aGroup:
handleDeskriptor der Gruppe - aRecBuf:
handleDeskriptor des Datensatzpuffers - aEdit:
handleEingabeobjekt - Resultat:
logicWird nicht ausgewertet - Siehe: Liste , Objekte ,
EvtLstEditStartGroup,EvtLstEditStartItem, Ereignisbefehle , Beispiel , Ereignisabläufe RecView , CodeLibrary - RecViewEdit
Das Ereignis wird ausgelöst, wenn im Ereignis EvtLstEditStartItem im Parameter aResult _WinRvwGroupEditContinue zurückgegeben wurde. Hier kann das Edit-Objekt angepasst werden.
Definition des Funktionskopfes:
sub EvtLstEditActivate
(
aEvt : event; // Ereignis
aGroup : handle; // Gruppe
aRecBuf : handle; // Datensatzpuffer
aEdit : handle; // Eingabe-Objekt
)
: 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. Die Eigenschaften SelectorItem und SelectorSubItem sind entsprechend gesetzt, so dass das zu editierende Item identifiziert werden kann.
aRecBuf
Hier wird der Datensatzpuffer mit den aktuellen Feldinhalten des Datensatzes übergeben.
aEdit
Hier wird das zum Editieren bereitgestellte Eingabeobjekt übergeben. Je nach Datentyp des zu editierenden Inhaltes wird ein anderes Objekt bereitgestellt. Handelt es sich um Rtf-Text, wird ein RtfEdit -Objekt übergeben. In diesem Fall hat das Eingabeobjekt noch keinen Inhalt. Dieser muss beispielsweise mit WinRtfLoad () manuell geladen werden.
Im Fall eines Rtf-Textes kann auch eine bestehende Rtf-Toolbar mit dem Eingabeobjekt verknüpft werden. Dazu muss dem Eingabeabjekt ein eindeutiger Name gegeben werden und eine Verknüpfung zwischen der Toolbar und dem Objekt per ObjLink hergestellt werden.
Nach dem Aufruf dieses Ereignisses wird das Eingabeobjekt sichtbar gemacht.
Resultat
Der Rückgabewert der Funktion wird nicht ausgewertet.
Besonderheiten
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.
Die Eigenschaft StyleBorder, von dem in aEdit übergebenen Objekt, kann hier auf _WinBorFrame gesetzt werden, um einen Frame-Rahmen anzuzeigen, wodurch das Eingabeobjekt vergrößert werden kann.
Beispiel:
sub EvtLstEditActivate
(
aEvt : event; // Ereignis
aGroup : handle; // Gruppe
aRecBuf : handle; // Datensatzpuffer
aEdit : handle; // Eingabe-Objekt
)
: logic; // Wird nicht ausgewertet
{
if (aGroup->wpSelectorItem = 1 and aGroup->wpSelectorSubItem = 4)
{
with RecViewRtf
{
// RtfToolbar mit RtfEdit verknüpfen
aEdit->wpName # 'my_rtfedit';
$:rtfToolbar->wpObjLink # aEdit->wpName;
aEdit->wpObjLink # $:rtfToolbar->wpName;
}
// News-Text in RtfEdit laden
fnNewsText # aRecBuf->fnNewsText;
aEdit->wpDBFieldName # 'fnNewsText';
aEdit->WinRtfLoad(_WinStreamBufField, _WinRtfLoadRtf);
}
}