4D v14.3

Eigenschaften für Listboxen

Home

 
4D v14.3
Eigenschaften für Listboxen

Eigenschaften für Listboxen  


 

 

Wählen Sie ein Objekt vom Typ Listbox im Formulareditor, zeigt die Eigenschaftenliste mehrere spezifische Gruppen und Eigenschaften. Weitere Eigenschaften sind verfügbar, wenn Sie in der Listbox eine Spalte (siehe Eigenschaften für Spalten der Listbox), einen Spaltentitel (siehe Eigenschaften für Spaltentitel der Listbox) oder einen Spaltenfußteil Eigenschaften für Fußteile der Listbox auswählen.

Diese Gruppe enthält die Eigenschaft Datenquelle, über die Sie die Art der Listbox festlegen können: 

  • Wählen Sie die Option Aktuelle Auswahl, um Ausdrücke, Datenfelder oder Methoden zu verwenden, deren Werte für jeden Datensatz der aktuellen Auswahl einer Tabelle gewertet werden.
  • Wählen Sie die Option Temporäre Auswahl, um Ausdrücke, Datenfelder oder Methoden zu verwenden, deren Werte für jeden Datensatz der temporären Auswahl einer Tabelle gewertet werden.
  • Wählen Sie die Option Arrays, um Array Elemente als Zeilen der Listbox zu verwenden.
    Diese Option ist erforderlich, um das Ergebnis einer SQL-Anfrage in der Listbox einzufügen. Weitere Informationen dazu finden Sie im Abschnitt Ergebnis einer SQL-Anfrage in Listbox anzeigen.

Dieses Thema erscheint nur für den Listboxtyp Auswahl. Es enthält die Eigenschaft Haupttabelle für Listboxen, die auf der aktuellen Auswahl basieren und die Eigenschaft Temporäre Auswahl für Listboxen, die auf einer temporären Auswahl basieren.

  • Hauptabelle: Damit definieren Sie die Tabelle, deren aktuelle Auswahl Sie benutzen wollen. Diese Tabelle und die dazugehörige aktuelle Auswahl sind die Referenz für die Datenfelder, die den Spalten in der Listbox zugeordnet werden (Feldreferenzen oder Ausdrücke mit Feldern). Selbst wenn einige Spalten Felder aus anderen Tabellen enthalten, wird die Anzahl der angezeigten Zeilen durch die Haupttabelle bestimmt.
    Das PopUp-Menü für diese Eigenschaft zeigt alle Tabellen der Datenbank an, egal ob das Formular mit einer Tabelle (Tabellenformular) oder nicht (Projektformular) verknüpft ist. Die Eigenschaft zeigt standardmäßig die erste Tabelle der Datenbank. Weitere Informationen dazu finden Sie im Abschnitt Anzeige der Felder in Listboxen.
  • Temporäre Auswahl: Hier geben Sie den Namen einer gültigen temporären Auswahl ein. Sie kann vom Typ Prozess oder Interprozess sein. Der Inhalt der Listbox basiert dann auf dieser Auswahl. Die gewählte temporäre Auswahl muss vorhanden und gültig sein, wenn die Listbox angezeigt wird. Andernfalls bleibt die Listbox leer. Sie bleibt ebenfalls leer, wenn Sie den Namensbereich leer lassen.
    Hinweis:
    Temporäre Auswahlen sind geordnete Datensatzlisten. Sie dienen dazu, die Reihenfolge und den aktuellen Datensatz einer Auswahl im Speicher zu halten. Weitere Informationen dazu finden Sie im Handbuch 4D Programmiersprache im Kapitel Temporäre Auswahl.

Diese Gruppe enthält alle Grundeigenschaften des Objekts:

  • Spaltenanzahl: Anzahl der Spalten in der Listbox (standardmäßig 1). Klicken Sie auf den Spaltentitel, erscheint das Kontextmenü, über das Sie die Anzahl ändern können. Sie klicken auf eine Spalte bzw. einen Spaltentitel und wählen zwischen Spalte einfügen, duplizieren oder löschen:
  • Anzahl gesperrte Spalten: Anzahl, die dauerhaft am linken Rand der Listbox sichtbar bleiben soll, auch wenn der Benutzer horizontal durch die Spalten scrollt. Eine gesperrte Spalte lässt sich in der Größe anpassen, ist eingebbar, etc., genauso wie reguläre Spalten. Gesperrt ist lediglich ihre Position in der Listbox, d.h. sie bleibt beim Scrollen erhalten. Das ist z.B. hilfreich, um Zeilenbezeichnungen in umfangreichen Arrays anzuzeigen.
    Mit dieser Eigenschaft können Sie einen gesperrten Bereich setzen. Wird eine gesperrte Spalte per Programmierung gelöscht, verringert sich die Anzahl der gesperrten Spalten um 1. Wird eine Spalte per Programmierung in den gesperrten Bereich eingefügt, wird sie automatisch gesperrt.
    Hinweis: Einen Vergleich zwischen gesperrten und statischen Spalten finden Sie im unteren Absatz "Gesperrte und statische Spalten". 
  • Anzahl statische Spalten: Anzahl, die sich nicht während der Ausführung bewegen lässt. Der Wert gibt die Anzahl der festen Spalten, beginnend mit der ersten Spalte der Listbox an. Um das Bewegen von Spalten auszuschließen, muss dieser Wert gleich der Gesamtanzahl der Spalten sein. Beachten Sie, dass auch ausgeblendete Spalten mitgezählt werden.
    Ist die Option hierarchische Listbox nicht aktiviert, hat diese Eigenschaft standardmäßig den Wert 0 (Null), d.h. alle Spalten lassen sich bewegen.
    Ist der hierarchische Modus aktiviert (nur Listboxen vom Typ Array), hat diese Eigenschaft immer mindestens den Wert 1.
    Hinweis: Einen Vergleich zwischen gesperrten und statischen Spalten finden Sie im unteren Absatz "Gesperrte und statische Spalten".
  • Auswahlmenge: Diese Eigenschaft wurde nur für Listboxen vom Typ Auswahl hinzugefügt. Sie definiert die Menge zum Verwalten markierter Datensätze in der Listbox. Ist die Datenquelle Array ausgewählt, wird ein Array vom Typ Boolean mit demselben Namen wie die verwendete Listbox verwendet.
    4D erstellt eine Standardmenge mit Namen ListboxMengeN, wobei N bei 0 startet und gemäß der Anzahl Listboxen im Formular erhöht wird. Bei Bedarf können Sie diese Standardmenge ändern, es kann eine lokale, Prozess- oder Interprozessmenge sein. Wir empfehlen die Verwendung einer lokalen Menge, z.B. $LBMenge, um den Netzwerkverkehr gering zu halten. Sie wird dann automatisch von 4D verwaltet. Wählt der Benutzer eine oder mehrere Zeilen in der Listbox, wird die Menge sofort aktualisiert. Um eine oder mehrere Zeilen per Programmierung auszuwählen, verwenden Sie die Befehle im Kapitel Mengen des Handbuchs 4D Programmiersprache .
    Hinweise:
    • Der Status Markiert in Zeilen der Listbox ist vollkommen unabhängig vom Status Markiert in Datensätzen einer Tabelle.
    • Enthält die Eigenschaft Auswahlmenge keinen Namen, ist in der Listbox keine Auswahl möglich.
  • Zeilen ausblenden (nur in Listboxen vom Typ Array): Hier können Sie eine oder mehrere Zeilen ausblenden. Sie müssen den Namen eines Array vom Typ Boolean eingeben. Dieses Array muss die gleiche Anzahl Elemente wie die Listbox haben. Jedes Element des Array entspricht dem Status angezeigt/ausgeblendet der entsprechenden Zeile in der Listbox:
    • Um eine Zeile auszublenden, übergeben Sie Wahr
    • Um eine Zeile anzuzeigen, übergeben Sie Falsch
    Ist hier kein Array angegeben oder ist das Array leer, werden alle Zeilen der Listbox angezeigt. Standardmäßig sind hinzugefügte Zeilen sichtbar.
    Ausblenden von Zeilen betrifft nur die Anzeige in der Listbox. Ausgeblendete Zeilen sind weiterhin in den Arrays enthalten und lassen sich per Programmierung steuern. Die Routinen der Programmiersprache, insbesondere LISTBOX Get number of rows oder LISTBOX GET CELL POSITION, berücksichtigen nicht den Status angezeigt/ausgeblendet. So gibt LISTBOX Get number of rows in einer zehnzeiligen Liste den Wert 10 zurück, auch wenn 9 Zeilen ausgeblendet sind.
    Für den Benutzer sind ausgeblendete Zeilen in einer Listbox nicht offensichtlich erkennbar. Er kann jedoch nur sichtbare Zeilen auswählen, z.B. über den Befehl Select All.
  • Auswahlmodus: Hier definieren Sie den Auswahlmodus für die Zeilen der Listbox. Es gibt drei Optionen:
    • Nichts: Sie können weder eine Zeile auswählen, noch Daten eingeben. Auswahl und Eingabe lassen sich nur per Programmierung verwalten. Klick oder Doppelklick in die Liste haben keine Auswirkung, selbst wenn die Option Eingebbar markiert ist. Die Ereignisse On Clicked und On Double Clicked lassen sich jedoch erzeugen. Mit dieser Option hat der Entwickler die volle Kontrolle, und zwar mit der Eigenschaft Auswahlmenge über Auswahlen, mit dem 4D Befehl EDIT ITEM über die Dateneingabe. Die Ereignisse On Selection Change und On Before Data Entry werden nicht generiert. Das Ereignis On After Edit lässt sich dagegen erzeugen, wenn der Benutzer Daten über den 4D Befehl EDIT ITEM eingibt.
    • Einfach: Sie können nur eine Zeile auf einmal auswählen
    • Mehrfach: Sie können mehrere Zeilen auf einmal auswählen. Die standardmäßigen Tastenkombinationen lauten: Umschalttaste+Klick für eine fortlaufende Auswahl; unter Windows Strg-Taste+Klick, auf Mac OS Befehlstaste+Klick für eine unterbrochene Auswahl.
  • Doppelklick auf Zeile (nur Listboxen vom Typ Auswahl): Bestimmt, welche Aktion durchgeführt wird, wenn der Benutzer in eine Zeile der Listbox doppelklickt. Es gibt folgende Optionen:
    • Nichts (Standard): Doppelklick in eine Zeile löst keine automatisch Aktion aus.
    • Datensatz ändern: Doppelklick in eine Zeile zeigt den entsprechenden Datensatz im Detail-Formular für die Listbox (siehe nächster Abschnitt “Eingabeformular”). Er wird im Lese-/Schreibmodus geöffnet, so dass er sich ändern lässt.
    • Datensatz anzeigen: ist identisch zur vorigen Aktion. Der Datensatz wird jedoch in Nur-Lesen Modus geöffnet, so dass er sich nicht ändern lässt.

    Hinweis: Doppelklick in eine leere Zeile wird ignoriert.
    Unabhängig von der gewählten Aktion wird hier das Formularereignis On Double Clicked erzeugt.
    Für die beiden letzten Aktionen wir auch das Formularereignis On Open Detail generiert. Das Ereignis On Close Detail wird generiert, wenn ein Datensatz im Detail-Formular für die Listbox angezeigt wird und geschlossen werden soll - unabhängig, ob er geändert wurde.      

  • Eingabeformular (nur Listboxen vom Typ Auswahl): Definiert, welches Formular zum Ändern oder Anzeigen einzelner Datensätze der Listbox verwendet wird.
    Das definierte Formular erscheint:
    • wenn die Standardaktionen Unterdatensatz hinzufügen und Unterdatensatz bearbeiten für die Listbox angewandt werden (siehe Standardaktionen verwenden)
    • Bei Doppelklick auf die Zeile, wenn für "Datensatz ändern" und "Datensatz anzeigen" die Eigenschaft Doppelklick auf Zeile gesetzt ist (siehe voriger Abschnitt "Doppelklick auf Zeile")

Gesperrte Spalten und statische Spalten sind zwei getrennte und von einander unabhängige Funktionalitäten in Listboxen:

  • Gesperrte Spalten bleiben immer am linken Rand der Listbox sichtbar, sie verändern ihre Position nicht beim horizontalen Scrollen.
  • Statische Spalten lassen sich innerhalb der Listbox nicht per Drag and Drop bewegen.

Hinweis: Sie können statische Spalten per Programmierung über den Befehl Listbox im Handbuch 4D Programmiersprache setzen.

Die Interaktion dieser Eigenschaften ist wie folgt:

  • Setzen Sie Spalten, die nur statisch sind, lassen sie sich nicht bewegen.
  • Setzen Sie Spalten, die gesperrt, aber nicht statisch sind, lassen sie sich innerhalb des gesperrten Bereichs frei bewegen, jedoch nicht außerhalb dieses Bereichs setzen.
  • Definieren Sie dieselbe Anzahl gesperrte Spalten wie statische Spalten, können Sie diese Spalten innerhalb des gesperrten Bereichs nicht bewegen.
  • Sie können je nach Ihren Bedürfnissen eine Kombination aus gesperrten und statischen Spalten setzen. Setzen Sie z.B. drei gesperrte Spalten und eine statische Spalte, kann der Benutzer die beiden rechts im gesperrten Bereich gelegenen Spalten verschieben, da nur die erste Spalte statisch ist.

Diese Gruppen verwalten die Anzeige und Höhe von Kopf- und Fußteilen für Spalten von Listboxen. Beachten Sie, dass Kopf- und Fußteile nicht eingebbar sind. Ihr Inhalt wird immer berechnet. 

  • Kopfteil / Fußteil anzeigen: Dient zum Anzeigen oder Ausblenden von Kopf- und Fußteilen. Die anderen Optionen sind nur verfügbar, wenn diese Option markiert ist.
    Wird der Bereich in der Listbox angezeigt, können Sie darauf klicken, um ihn auszuwählen und dann die anderen Optionen in der Eigenschaftenliste nutzen. (siehe Eigenschaften für Spaltentitel der Listbox und Eigenschaften für Fußteile der Listbox). Sie können pro Spalte ein Kopfteil und ein Fußteil haben; jedes Teil lässt sich separat konfigurieren.
  • Standardmäßig unsichtbar: Wie bei allen Formularobjekten ermöglicht diese Option die dynamische Anzeige über den Befehl OBJECT SET VISIBLE.
    Der Befehl OBJECT SET VISIBLE hat keine Auswirkung, wenn die Option zum Anzeigen des Kopf- bzw. Fußteilbereichs in der Eigenschaftenliste nicht markiert ist. 
  • Höhe: Dient zum Setzen der Zeilenhöhe für ein Kopf- oder Fußteil in der Listbox. Sie können die Einheit (Zeilen oder Pixel) für den Wert der Höhe wählen. Weitere Informationen dazu finden Sie im nachfolgenden Abschnitt Höhe in Pixel oder Zeilen.
    Standardmäßig ist die Höhe von Kopf- bzw. Fußteilen 1 Zeile.
    Warnung: Die Mindesthöhe in Pixel für Kopfteile richtet sich nach dem Betriebssystem. Übergeben Sie einen zu kleinen Wert, wird er durch den im System festgelegten Mindestwert ersetzt. Für Fußteile und Zeilen gibt es keine Mindesthöhe.
    Hinweis zur Kompatibilität: Unter Windows 7 und Windows Vista ist die Mindesthöhe für Kopfteile 24 Pixel. Haben Kopfteile in Ihren konvertierten Datenbanken eine geringere Höhe, werden diese automatisch angepasst. In solchen Fällen müssen Sie Ihre Formulare evtl. entsprechend anpassen.

    Sie können die Zeilenhöhe von Kopf- bzw. Fußteil über die Befehle LISTBOX SET HEADERS HEIGHT und LISTBOX SET FOOTERS HEIGHT auch dynamisch setzen.

Sie können die Höhe für Kopf-, Fußteile und Zeilen entweder in Pixel oder in Zeilen setzen. In der Eigenschaftenliste setzen Sie die Einheit über die Schaltfläche rechts neben dem Eintrag "Höhe".

Sie können auch direkt im Wertebereich ein "L" (für "line"= Zeile) oder ein "P" (für Pixel) eingeben, z.B, "17 P". Die Bezeichnung der Schaltfläche wird dann entsprechend angepasst. 

Sie können in derselben Listbox auch beide Einheiten zusammen verwenden:

  • Bei "Pixel" wird der Wert der Höhe direkt auf die betreffende Zeile angewandt, unabhängig von der Schriftgröße für die Spalten. Ist sie zu groß, wird der Text abgeschnitten. Außerdem werden Bilder je nach Format abgeschnitten oder angepasst.
  • Bei "Zeilen" wird die Höhe unter Berücksichtigung der Schriftgröße der betreffenden Zeile berechnet. Sind mehrere Werte definiert, verwendet 4D den größten.
    Enthält eine Zeile z.B. "Verdana 18", "Geneva 12" und "Arial 9", verwendet 4D für die Zeilenhöhe "Verdana 18" (z.B. 25 Pixel). Diese Höhe wird dann mit der Anzahl der definierten Zeilen multipliziert.
    Hinweis: Diese Berechnung berücksichtigt nicht die Größe von Bildern oder den Schriften zugewiesene Stilarten.
  • Einheit wechseln:Wechseln Sie von Zeile in Pixel oder umgekehrt, wandelt 4D die Einheit automatisch um und zeigt das Ergebnis in der Eigenschaftenliste an. So wird z.B. bei der Schrift "Lucida grande 24" die Höhe "1 Zeile" in "30 Pixel" umgewandelt, die Höhe "60 Pixel" in "2 Zeilen".
    Beachten Sie, dass das Vor- und Zurückverwandeln zu einem anderen Endergebnis als dem Startwert führen kann, da 4D automatische Berechnungen durchführt. Dies veranschaulicht das folgende Beispiel:
    (Schrift Arial 18): 52 Pixel -> 2 Zeilen -> 40 Pixel
    (Schrift Arial 12): 3 Pixel -> 0,4 Zeile gerundet auf 1 Zeile -> 19 Pixel

Diese Gruppe enthält die Eigenschaften für Rasterlinien im Objekt Listbox.

  • Horizontale Linien: Blendet die horizontalen Linien der Listbox ein oder aus. Sie sind standardmäßig eingeblendet.
  • Horizontale Linienfarbe: Definiert die Farbe der horizontalen Linien der Listbox. Standardmäßig ist grau vorgegeben.
  • Vertikale Linien: Blendet die vertikalen Linien der Listbox ein oder aus. Sie sind standardmäßig eingeblendet.
  • Vertikale Linienfarbe: Definiert die Farbe der vertikalen Linien der Listbox. Standardmäßig ist grau vorgegeben.

Nur Listboxen vom Typ Array können hierarchisch sein. Diese Option konfiguriert die hierarchische Anzeige der Listbox. Beachten Sie, dass diese Eigenschaften automatisch geändert werden, wenn Sie die Hierarchie über das PopUp-Menü des Objekts Listbox definieren (siehe Hierarchische Listboxen erstellen und verwenden).

  • Hierarchische Listbox: Damit definieren Sie in der Eigenschaftenliste, dass die Listbox in hierarchischer Form angezeigt wird.
  • Variable 1 ... 10: Diese zusätzlichen Optionen erscheinen, wenn Hierarchische Listbox markiert ist. Immer wenn ein Wert in ein Feld eingegeben wird, wird eine neue Zeile hinzugefügt. Es lassen sich bis zu 10 Variablen definieren.
    Diese Variablen setzen die hierarchischen Ebenen, die in der ersten Spalte angezeigt werden sollen.


    Die erste Variable entspricht immer dem Variablennamen für die erste Spalte der Listbox. Die beiden Werte werden automatisch verknüpft. Die erste Variable ist immer sichtbar und eingebbar, z.B. Land.
    Die zweite Variable ist auch immer sichtbar und eingebbar; sie definiert die zweite hierarchische Ebene, z.B. Bundesland.
    Ab dem dritten Feld hängt jede Variable von der vorangegangenen ab, z.B. Landkreis, Stadt, usw. Es sind bis zu zehn hierarchische Ebenen möglich.
    Entfernen Sie einen Wert, steigt die gesamte Hierarchie eine Ebene höher.
    Die letzte Variable kann nie hierarchisch sein, selbst wenn auf dieser Ebene mehrere gleichwertige Werte existieren. Nehmen wir z.B. eine Konfiguration, wo Arr1 die Werte A A A B B B, Arr2 die Werte 1 1 1 2 2 2 und Arr3 die Werte X X Y Y Y Z enthält. In diesem Fall können A, B, 1 und 2 in zugeklappter Form erscheinen, X und Y dagegen nicht:
       + A
           + 1
               X
               X
               Y
       + B
           + 2
               Y
               Y
               Z    
    Dieses Prinzip gilt nicht, wenn nur eine Variable in der Hierarchie angegeben ist: In diesem Fall werden identische Werte gruppiert.
    Hinweis: Definieren Sie eine Hierarchie, die auf den ersten Spalten einer vorhandenen Liste basiert, müssen Sie diese Spalten mit Ausnahme der ersten entfernen oder ausblenden, da sie sonst in der Listbox doppelt erscheinen. Definieren Sie die Hierarchie über das PopUp-Menü des Editors, werden die nicht benötigten Spalten automatisch aus der Listbox entfernt.

Diese Gruppe enthält alle Eigenschaften für Koordinaten, Breite und Höhe der Listbox.

Die Eigenschaft Zeilenhöhe gilt für die Höhe von Zeilen. Die Höhe von Kopf- und Fußteilen definieren Sie unter der Gruppe "Kopfteile" bzw. "Fußteile".
Sie können die Höhe in Pixel oder Zeilen setzen. Weitere Informationen dazu finden Sie im oberen Abschnitt " Höhe in Pixel oder Zeilen". Standardmäßig richtet sie sich nach Plattform und Schriftgröße.

Diese Gruppe enthält alle Eigenschaften für die Hintergrundfarbe der Zeilen und den Randstil.

  • Hintergrundfarbe: Hier legen Sie die Hintergrundfarbe der Listbox fest. Diese Farbe wird für das gesamte Objekt mit Ausnahme der Kopfteile verwendet.
  • Alternative Hintergrundfarbe: Hier legen Sie für Zeilen der Listbox mit ungerader Nummer eine andere Hintergrundfarbe fest. Das macht Arrays leichter lesbar.
  • Randstil: Hier legen Sie einen Standardstil für den Rand der Listbox fest.

In dieser Gruppe definieren Sie die Standardeigenschaften für Text in der Listbox: Stilvorlage, Schrifttyp, Schriftstil, etc. sowie einige spezifische Eigenschaften zum Anzeigen von Text in jeder Zelle der Listbox:

  • Zeilenstil Array (Listboxtyp Array) / Zeilenstil (Listboxtyp Auswahl): Hier weisen Sie jeder Zeile der Listbox einen eigenen Schriftstil zu.
    • Für Listboxen vom Typ Array müssen Sie den Namen eines Array vom Typ Lange Ganzzahl eingeben. Jedes Element im Array entspricht einer Zeile in der Listbox. Das Array muss dieselbe Größe haben wie die den Spalten zugeordneten Arrays. Zum Füllen des Array über eine Methode wählen Sie eine Konstante unter dem Thema Schriftstile im Handbuch 4D Programmiersprache. Sie können auch mehrere Stilarten miteinander kombinieren. Um den Stil, der in den Eigenschaften der Listbox definiert wurde, der Zeile zuzuweisen, übergeben Sie den Wert -255 im Element des dazugehörigen Array.
    • Für Listboxen vom Typ Auswahl müssen Sie einen Ausdruck oder eine Variable (außer für ein Array) eingeben. Der Ausdruck bzw. die Variable wird für jede angezeigte Zeile ausgewertet. Einen Ausdruck können Sie über den Formeleditor definieren. Klicken Sie dazu auf die Schaltfläche [...]. Sie erscheint, wenn Sie den Bereich auswählen. Sie können auch die Konstanten unter dem Thema Schriftstile im Handbuch 4D Programmiersprache verwenden.
      Das folgende Beispiel verwendet einen Variablennamen: Geben Sie FirmaStil im Bereich Zeilenstil ein und schreiben Sie folgende Methode:
       FirmaStil:=Choose([Firma]ID;Bold;Plain;Italic;Underline)
  • Zeilen Schriftfarbe Array (Listboxtyp Array) / Zeilenschriftfarbe (Listboxtyp Auswahl): Hier weisen Sie jeder Zeile der Listbox eine eigene Schriftfarbe zu. Sie müssen einen RGB-Farbwert verwenden. Weitere Informationen dazu finden Sie im Handbuch 4D Programmiersprache unter dem Befehl OBJECT SET RGB COLORS.
    • Für Listboxen vom Typ Array müssen Sie den Namen eines Array vom Typ Lange Ganzzahl eingeben. Jedes Element im Array entspricht einer Zeile in der Listbox. Das Array muss dieselbe Größe haben wie die den Spalten zugeordneten Arrays. Sie können eine Konstante unter dem Thema SET RGB COLORS der 4D Programmiersprache verwenden. Um die Schriftfarbe, die in den Eigenschaften der Listbox definiert wurde, einer Zeile zuzuweisen, übergeben Sie den Wert -255 im Element des dazugehörigen Array.
    • Für Listboxen vom Typ Auswahl müssen Sie einen Ausdruck oder eine Variable (außer für ein Array) eingeben. Der Ausdruck bzw. die Variable wird für jede angezeigte Zeile gezeigt. Einen Ausdruck können Sie über den Formeleditor definieren. Klicken Sie dazu auf die Schaltfläche [...]. Sie erscheint, wenn Sie den Bereich auswählen. Sie können auch die Konstanten unter dem Thema SET RGB COLORS im Handbuch 4D Programmiersprache verwenden.
      Das folgende Beispiel verwendet einen Variablennamen: Geben Sie FirmaFarbe im Bereich Zeilenschriftfarbe ein und schreiben Sie folgende Methode:
       FirmaFarbe:=Choose([Firma]ID;Default background color;Default light shadow color;Default foreground color;Default dark shadow color)
  • Zeilen Hintergrundfarbe Array (Listboxtyp Array) / Zeilenhintergrundfarbe (Listboxtyp Auswahl): Hier geben Sie eine eigene Hintergrundfarbe für jede Zeile der Listbox ein. Sie müssen einen RGB-Farbwert verwenden. Weitere Informationen dazu finden Sie im Handbuch 4D Programmiersprache unter dem Befehl OBJECT SET RGB COLORS.
    • Für Listboxen vom Typ Array müssen Sie den Namen eines Array vom Typ Lange Ganzzahl eingeben. Jedes Element im Array entspricht einer Zeile in der Listbox. Das Array muss dieselbe Größe haben wie die den Spalten zugeordneten Arrays. Sie können Konstanten unter dem Thema SET RGB COLORS im Handbuch 4D Programmiersprache verwenden. Um die Hintergrundfarbe, die in den Eigenschaften der Listbox definiert wurde, einer Zeile zuzuweisen, übergeben Sie den Wert -255 im Element des dazugehörigen Array.
    • Für Listboxen vom Typ Auswahl müssen Sie einen Ausdruck oder eine Variable (außer für ein Array) eingeben. Der Ausdruck bzw. die Variable wird für jede angezeigte Zeile gezeigt. Einen Ausdruck können Sie über den Formeleditor definieren. Klicken Sie dazu auf die Schaltfläche [...]. Sie erscheint, wenn Sie den Bereich auswählen. Sie können auch die Konstanten unter dem Thema SET RGB COLORS im Handbuch 4D Programmiersprache verwenden.
  • Horizontale Ausrichtung: Der Inhalt jeder Zelle lässt sich horizontal Links, Rechts oder Zentriert ausrichten.
    Die Option Standard setzt die Ausrichtung gemäß dem jeweils gefundenen Datentyp: Text und Bilder werden linksbündig, numerische Daten werden rechtsbündig ausgerichtet.
  • Vertikale Ausrichtung: Der Inhalt jeder Zelle lässt sich vertikal Oben, Zentriert oder Unten ausrichten.
    Die Option Standard setzt die Ausrichtung gemäß dem jeweils gefundenen Datentyp: Unten für alle Daten bis auf Bilder, Oben für Bilder.

Sie können die Einstellung für die gesamte Listbox oder für jede Spalte einzeln definieren (siehe Schriftstil und -farbe verwalten). Sie ist auch für Kopf- und Fußteile verfügbar.

Diese Gruppe enthält alle Eigenschaften zum dynamischen Verhalten der Listbox.

  • Methode (Bearbeiten...): Über diese Schaltfläche zeigen Sie die Methode des Objekts vom Typ Listbox an. Beachten Sie, dass auch jede Spalte eine Objektmethode enthalten kann.
  • Dragfähig und dropfähig: Diese Option aktiviert die Drag- und Drop-Funktionen für Listboxen. Sie können dann die Zeile einer Listbox per Drag&Drop in eine andere Listbox bzw. ein anderes Objekt ziehen und umgekehrt. Das gilt jedoch nur für Zeilen; nicht für Spalten. Spalten lassen sich nur innerhalb derselben Listbox bewegen.
    Drag&Drop in Listboxen erfolgt über die Standard Funktionalitäten von 4D. Das sind die Formularereignisse On Drop und On Drag Over sowie die 4D Befehle DRAG AND DROP PROPERTIES und Drop position.    
  • Verschiebbare Zeilen (nur Listboxtyp Array): Diese Option ist standardmäßig aktiv. Damit lassen sich Zeilen während der Ausführung bewegen. Die Option ist für Listboxen vom Typ Auswahl sowie im hierarchischen Modus (Option Hierarchische Listbox ist markiert) nicht verfügbar.
  • Sortierfähig: Diese Option ist standardmäßig aktiv. Damit können Sie durch Anklicken des Spaltentitels Daten in Spalten sortieren. Es lassen sich jedoch keine Arrays (Spalten) vom Typ Bild sortieren.
    In Listboxen, die auf einer Datensatzauswahl basieren, sind nur die standardmäßigen Sortierfunktionen aktiv:
    • Wenn die Datenquelle die aktuelle Auswahl ist
    • Für Spalten, denen Datenfelder vom Typ Alphanumerisch, Zahl, Datum, Zeit oder Boolean zugewiesen sind
    In anderen Fällen (Listboxen mit temporären Auswahlen, Spalten mit Ausdrücken) ist die Standardsortierfunktion nicht verfügbar.

    Eine Standardsortierung stimmt alle Spalten der Listbox aufeinander ab, inkl. der berechneten Spalten.

Für Listboxen, die von rollbaren Bereichen kommen, ist unter dieser Gruppe automatisch die Option Rollbarer Bereich markiert. Bisherige rollbare Bereiche werden ab 4D v13 automatisch in Listboxen umgewandelt. Die Option ist jedoch für alle Listboxen verfügbar:


Ist diese Option markiert, funktioniert die Listbox auf eine spezielle Art:

  • Hat das Array (einmalig) der Listbox die Eigenschaft "unsichtbar", ist das Objekt Listbox ebenfalls komplett unsichtbar.
  • Wird dem Array ein Wert zugewiesen, wird die entsprechende Zeile in der Listbox gewählt. Beispiel: MeinArray:=5 wählt die 5. Zeile der Listbox.
  • Umgekehrt wird durch Anklicken einer Zeile der aktuelle Wert des Array geändert.
  • Erfolgt von einer Zeile der Listbox ein Drop zu einem externen Objekt, gibt der in diesem Objekt ausgeführte Befehl DRAG AND DROP PROPERTIES einen Zeiger auf das Array der Listbox und nicht auf die Listbox selbst zurück.

Listboxen, die aus den früher vorhandenen gruppierten rollbaren Bereichen konvertiert wurden, sind verbunden und funktionieren in koordinierter Form:

  • Bei Auswählen einer Zeile in einer Listbox wird dieselbe Zeile in allen Listboxen ausgewählt, die zur verbundenen Gruppe gehören
  • Bei vertikalem Scrollen in einer Listbox wird auch in allen anderen Listboxen gescrollt, die zur verbundenen Gruppe gehören.

Hinweis: Konvertierte Listboxen sind im Formular auch gruppiert (standardmäßige 4D Funktion).

Sie können diese Listboxen miteinander verbinden oder die Verbindung auflösen. Wählen Sie dazu im Menü Objekt des Formulareditors den Eintrag Verbinden bzw. Verbindung auflösen:

Diese Befehle werden aktiviert, wenn mehrere Listboxen im Formular ausgewählt sind. Wird eine verbundene Listbox ausgewählt (sie gehört z.B. zu einer verbundenen Gruppe), erscheint in allen Listboxen, die mit derselben Gruppe verbunden sind, ein entsprechendes Icon:

Hinweis zur Kompatibilität: Diese Mechanismen ermöglichen, die Funktionsweise gruppierter rollbarer Bereiche zu reproduzieren. Wir empfehlen Ihnen jedoch, konvertierte Formulare mit Hilfe der standardmäßigen Funktionalitäten für Listboxen anzupassen.

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Listboxen

 
ARTIKELVERWENDUNG

4D Designmodus ( 4D v14 R2)
4D Designmodus ( 4D v14 R3)
4D Designmodus ( 4D v14.3)
4D Designmodus ( 4D v14 R4)

Geerbt von : Eigenschaften für Listboxen ( 4D v13.4)