<< | Inhaltsverzeichnis | Suchen | >> |
Funktion
Syntax: |
GR_LISTVIEW( [WAIT | NOWAIT,<EXITMACRO>,<SPLIT-HANDLE>,] |
||
Bedeutung: |
GR_LISTVIEW erzeugt eine graphische Liste. Diese Funktion ist nur unter WINDOWS 32-Bit verfügbar und liefert folgende Werte als Ergebnis: |
||
|
1 |
Der Benutzer hat ein Element der Tabelle mit <RETURN> oder durch einen Doppelklick mit der Maus ausgewählt. Die Variable EBUS_LISTVIEW$ enthält die markierten Elemente. Die einzelnen Elemente sind durch das erste Zeichen von <TRENNZEICHEN> getrennt. |
|
|
0 |
Der Benutzer hat GR_LISTVIEW mit <ESC> verlassen. |
|
|
-1 |
Es ist ein Fehler aufgetreten. Die Variable OK enthält einen der folgenden Fehlercodes: 7951 Ausgabefenster kann nicht geöffnet werden |
|
|
Bei NOWAIT wird ein neuer Programmzweig gestartet (siehe Funktion WINDOWCALL), die Funktion kehrt sofort zurück zurück und liefert die Identifizierungsnummer (Handle) des Listview. Mit der Anweisung CLOSE_SELECT(<Handle>) kann ein mit NOWAIT geöffneter Listview geschlossen werden. Bei WAIT wird GR_LISTVIEW hierarchisch gestartet und die Funktion kehrt erst zurück wenn die Auswahl beendet wurde. Der Macro <EXITMACRO> wird ausgeführt, nachdem die Auswahl beendet wurde, sei es durch Schließen des Windows, durch Verlassen mit ESC oder die Anweisungen ENDSELECT und QUITSELECT. Wird WAIT oder NOWAIT angegeben, so muß auch ein <EXITMACRO> angegeben werden. Wenn der Listview im Split-Window angezeigt werden soll, muß <SPLIT-HANDLE> die Identifizierungsnummer des Split-Windows enthalten, andernfalls ist <SPLIT-HANDLE> = 0 zu setzen. Unabhängig von WAIT/NOWAIT schließt die Funktion GR_LISTVIEW alle Windows, die von ihr geöffnet wurden. Fehlen die Parameter [WAIT | NOWAIT,<EXITMACRO>,], so ist dies gleichbedeutend mit WAIT. NOWAIT hat nur unter WINDOWS eine Wirkung, unter MS-DOS und UNIX wirkt NOWAIT wie WAIT. Alle Schalter und ON <EREIGNIS> MACRO's werden bei NOWAIT beim Start von GR_LISTVIEW und bei jedem Verlassen des Programmzweigs gesichert. Beim erneuten Aktivieren des Programmzweigs wird der letzte Zustand der Schalter und ON <EREIGNIS> MACRO's wieder hergestellt. Nach jedem ON SELECT(<TASTE>) MACRO, der im GR_LISTVIEW ausgeführt wird, werden die ON <EREIGNIS> MACRO's erneut gesichert. |
||
|
<TABELLE> ist der Name eines alphanumerischen Bereichs. Es ist nur der Name der Variablen ohne Indizes anzugeben. Die Elemente der <TABELLE> legen die Daten eines Listvieweintrags fest und müssen folgendermaßen aufgebaut sein: "<GROSSES-BILD><TRENNZEICHEN> Das erste Zeichen in <TRENNZEICHEN> legt fest, durch welches Zeichen <GROSSES-BILD>, <KLEINES-BILD> und <SPALTEN-TEXT-n> getrennt werden. Ist <TRENNZEICHEN> der Leerstring, so gilt der Strichpunkt ";" als Trennzeichen. Wird in <TRENNZEICHEN> zusätzlich ein zweites Trennzeichen angegeben, so enthält die Variable EBUS_LISTVIEW$ nicht nur die Texte der ersten Spalten, sondern alle Spalten getrennt durch das zweite Trennzeichen. <GROSSES-BILD> bzw. <KLEINES-BILD> bezeichnet das Bild (Bitmap oder Icon), das im <MODUS> = 1 bzw. 2/3/4 angezeigt wird. Die Bildnamen dürfen fehlen, es werden dann keine Bilder angezeigt. Da WINDOWS-intern die Bilder immer paarweise verwaltet werden, ist zu beachten, daß die Bilder auch immer paarweise angegeben werden. Folgendes ist z.B. nicht zulässig: T$(1)
= "BILDG1.BMP;BILDK1.BMP;..." Es wird der Fehler 7974 gemeldet, da BILDK1.BMP schon zu BILDG1.BMP gehört und deshalb nicht mehr BILDG2.BMP zugeordnet werden kann. Die im Listview verwendeten Bilder sollten zusätzlich mit #ADDBITMAP bzw. #ADDICON dem Programm bekannt gemacht werden, damit sie in die Resourcen-Datei eingetragen werden. Zur Laufzeit werden die Bilder dann aus der EXE-Datei geladen. Dies geht deutlich schneller als das Suchen auf der Festplatte. <SPALTEN-TEXT-1> ist die Hauptbezeichnung des Listvieweintrags, die in jedem <MODUS> angezeigt wird. <SPALTEN-TEXT-2>, <SPALTEN-TEXT-3>, ... werden nur im <MODUS> = 4 angezeigt. <VOREINSTELLUNG> legt fest, welche Elemente beim Start von GR_TREEVIEW markiert dargestellt werden sollen. Anzugeben ist dabei von jedem Element der <SPALTEN-TEXT-1>. Die einzelnen Texte müssen durch <TRENNZEICHEN> getrennt werden. Ist <VOREINSTELLUNG> der Leerstring "", so wird kein Element markiert dargestellt. <ANZAHL> ist die Anzahl der Elemente der <TABELLE>, die beim Aufbau des Listview berücksichtigt werden sollen. Ist <UEBERSCHRIFT> der Leerstring "" und ist ein Window offen, so erfolgt die Anzeige des Listviews im aktuellen Window. Andernfalls wird ein neues Window mit der <UEBERSCHRIFT> geöffnet. Die Größe des Windows wird durch <WINDOW-ZEILEN> und <WINDOW-SPALTEN> festgelegt. <GROSSBILD-HOEHE> und <GROSSBILD-BREITE> legen die Größe der großen Bilder in Pixel fest. <KLEINBILD-HOEHE> und <KLEINBILD-BREITE> legen die Größe der kleinen Bilder in Pixel fest. <SPALTEN-INFORMATIONEN> enthält die durch <TRENNZEICHEN> getrennten Spalten-Informationen. Sie müssen folgendermaßen aufgebaut sein: "<AUSRICHTUNG><TRENNZ.><SORTIERTYP><TRENNZ.><TEXT><TRENNZ.> <AUSRICHTUNG>: L = Linksbündig (bei 1. Spalte
zwingend) <SORTIERTYP>: A = Alphabetisch <TEXT>: Spaltenüberschrift <SPALTEN-BREITEN> enthält für den <MODUS> = 4 die durch <TRENNZEICHEN> getrennten Breiten der einzelnen Anzeigespalten. Die Breiten sind als Vielfaches der Bildschirmspalten anzugegeben. Der Anwender kann im <MODUS> = 4 die Breiten der Spalten ändern. Nach dem Aufruf der Funktion GR_LISTVIEW sind unter WINDOWS (nicht unter Java !) in <SPALTEN-BREITEN> die aktuellen, eventuell geänderten Spaltenbreiten eingetragen. Deshalb muß beim Aufruf von GR_LISTVIEW eine <STRING-VARIABLE> angegeben werden. Ein <STRING-AUSDRUCK> ist nicht möglich, da sonst geänderte Spaltenbreiten nicht zurückgeliefert werden können. Vom Anwender geänderte Spaltenbreiten können z.B. in einer INI-Datei gespeichert und beim nächsten Aufruf des Listviews wieder eingestellt werden. Die Anzahl der Einträge in <SPALTEN-INFORMATIONEN> muß mit der Anzahl der Einträge in <SPALTEN-BREITEN> übereinstimmen, andernfalls wird der Fehler 7974 gemeldet. Jedes Element der <TABELLE> muß auch genau diese Anzahl <SPALTEN-TEXTE> besitzen, andernfalls wird der Fehler 7959 gemeldet. Leere <SPALTEN-TEXT>-Einträge sind möglich (nur <TRENNZEICHEN>). <MODUS> legt den Anzeigemodus des Listviews fest: |
||
|
<MODUS> |
Anzeigemodus |
|
|
1 |
Große Bilder mit
1. Spaltentext |
|
|
Alle ON SELECT(<TASTE>) MACRO's sind im GR_LISTVIEW wirksam. Wird ein solcher Macro ausgeführt, so enthält EBUS_LISTVIEW$ die markierten Elemente. Die einzelnen Elemente sind durch das erste Zeichen von <TRENNZEICHEN> getrennt. |
||
Beispiel: |
DIM T$(20) |
||
siehe auch: |
GR_TREEVIEW, GR_LISTVIEW_CHANGE_TEXT, GR_LISTVIEW_DELETE, GR_LISTVIEW_INSERT, GR_LISTVIEW_DELETE, GR_LISTVIEW_HILITE, GR_LISTVIEW_SET_MODE, EBUS_LISTVIEW$, ENABLE_WINDOW, CLOSE_SELECT |
||