bei der Verwendung der Option DCGUI_BROWSE_EDITACROSSDOWN tritt ein Problem auf.
Der Effekt nach der letzten Eingabe in die nächste Zeile auf erste Eingabefeld zu springen funktioniert nur, wenn die Anzahl der Datensätze größer ist als das eigentliche DCBROWSE. Werden weniger Daten angezeigt oder beginnt man mit der Eingabe am unteren Ende der Tabelle, erfolgt nur ein Sprung in die nächste Zeile aber nicht mehr in das erste Eingabefeld.
Der beschriebene Effekt funktioniert einwandfrei, wenn man mit dem Editieren vom Anfang der Tabelle beginnt und mit dem Editieren bis zum Tabellenende weitermacht. Beginnt man am unteren Ende der Tabelle (auf der letzte Seite) mit dem Editieren, funktioniert die Option nur noch eingeschränkt.
Das ganze habe ich sowohl mit Datensätzen als auch mit einem Array ausprobiert. In beiden Fällen funktioniert das nicht einwandfrei.
Getestet habe ich das mit der Alaska Version 1.90.331 / eXPress++ 1.9 (build 245) und der Alaska Version 1.90.355 / eXPress++ 1.9 (build 252). Mit beiden funktioniert die Option DCGUI_BROWSE_EDITACROSSDOWN bei mir nicht einwandfrei.
Codeauszug:
Code: Alles auswählen
@ 1,1 DCBROWSE oBrowse ALIAS 'pro003' ;
SIZE 125, 14.5 ;
CURSORMODE XBPBRW_CURSOR_CELL ;
PREEVAL {|o| o:xbpBrowse:adjustHeight := .T.} ;
NOHSCROLL ;
FIT ;
ID "BROWSE" ;
EDIT xbeBRW_ItemSelected MODE DCGUI_BROWSE_EDITACROSSDOWN