Die Anzeige einer Liste, bei der die Zeilenhöhe genau zum Inhalt passt, ist eine sehr häufige Anforderung. 4D View Pro enthält eine neue Funktion, mit der Sie unter die Höhe jeder Zeile in einer Listbox unabhängig steuern können, damit sie zum Inhalt passt. Mehr über 4D View Pro erfahren Sie in diesem Blog-Beitrag.
Es gibt jetzt zwei Möglichkeiten, die Zeilenhöhe in einer Listbox zu definieren:
- über neue dedizierte Befehle
- über ein neues Steuerfeld
Neue Befehle verwenden
Die neuen Befehle LISTBOX SET ROW HEIGHT und LISTBOX Get row height erlauben es, die Höhe jeder Zeile einzeln zu setzen und zu erhalten.
Wenn Sie diesen Code ausführen:
LISTBOX SET ROW HEIGHT(*; "listboxname";1;184) //Pellentesque
LISTBOX SET ROW HEIGHT(*; "listboxname";2;41) //Vestibulumn
LISTBOX SET ROW HEIGHT(*; "listboxname";3;86) //Suspendisse
Sie erhalten das folgende Ergebnis:
Verwendung eines Höhenkontroll-Arrays
Sie können diese Eigenschaft verwenden, um den Namen des Arrays für die Zeilenhöhe anzugeben, das Sie mit der Listbox verknüpfen möchten.
Wenn Sie zum Beispiel schreiben:
//Aktuelle Einheit ist Zeilen
ARRAY LONGINT(<>RowHeightArray;20)
<>RowHeightArray{5}:=3
Die fünfte Zeile des Listenfeldes wird eine Höhe von drei Zeilen haben, während alle anderen Zeilen ihre Standardhöhe beibehalten.
Sie können das Array zur Höhensteuerung auch durch Programmierung zuordnen. Die Befehle LISTBOX SET ARRAY und LISTBOX Get array akzeptieren jetzt einen Listbox-Zeilenhöhen-Array-Selektor , mit dem Sie das Zeilenhöhen-Steuerungs-Array über die Programmierung definieren können.
LISTBOX SET ARRAY ( {* ;} object ; Listbox Zeilenhöhe Array ; <>RowHeightArray )
<>RowHeightArray:=LISTBOXGet array ( {* ;} object ; Listbox Zeilenhöhe Array )
Sie wollen es selbst ausprobieren? Laden Sie einfach das folgende Beispiel herunter!
Für weitere Details lesen Sie bitte die folgenden Artikel in der 4D v16 Dokumentation: