Zum Hauptinhalt springen
Unlisted page
This page is unlisted. Search engines will not index it, and only users having a direct link can access it.

_WinLstEditClose

Wird ein Feld mit einem DataListPopup-Objekt innerhalb einer DataList, RecList oder RecView editiert, führt das Setzen der Eigenschaft LstFlags der DataListPopup auf den Wert _WinLstEditClose zum Verlassen des Edit-Objekts, wenn ein Eintrag aus der DataListPopup übernommen wurde. Zusätzlich werden die Ereignisse EvtLstEditCommit und EvtLstEditFinished (bei DataList und RecList) bzw. EvtLstEditEndItem und EvtLstEditEndGroup (beim RecView) ausgelöst.

In dem Ereignis EvtLstEditFinished kann über die Konstante _WinKeySelect ermittelt werden, ob die Übernahme eines Eintrags aus der DataListPopup zum Beenden geführt hat.

Das Setzen von _WinLstEditClose muss in dem Ereignis EvtLstEditStart bzw. EvtLstEditActivate vorgenommen werden.

Beispiel (DataList/RecList):

sub EvtLstEditStart
(
aEvt : event; // Ereignis
aColumn : handle; // Spalte
aEdit : handle; // Eingabefeld
aList : handle; // Datalist
)
: logic;

{
if (aList > 0)
{
// Edit-Objekt verlassen
aList->wpLstFlags # _WinLstEditClose;
// Liste mit Einfachklick beenden
aList->wpComboStyle # _WinComboSingleClick;
...
}
}

Beispiel (RecView):

sub EvtLstEditActivate
(
aEvt : event; // Ereignis
aGroup : handle; // Gruppe
aRecBuf : handle; // Datensatzpuffer
aEdit : handle; // Eingabe-Objekt
)
: logic;

local
{
tPopup : handle;
tPopupList : handle;
}

{
// Popup und Liste ermitteln
tPopup # aEdit->WinInfo(_WinFirst, 1, _WinTypePopupList);
if (tPopup > 0)
{
tPopupList # tPopup->WinInfo(_WinFirst, 1, _WinTypeDataListPopup);
if (tPopupList > 0)
// Popup-Liste vorhanden => Flag setzen
tPopupList->wpLstFlags # _WinLstEditClose;
}

return(true);
}