4D v13.4

PopUp-Menüs, Dropdown-Listen und rollbare Bereiche

Home

 
4D v13.4
PopUp-Menüs, Dropdown-Listen und rollbare Bereiche

PopUp-Menüs, Dropdown-Listen und rollbare Bereiche  


 

Über PopUp-Menüs und Dropdown-Listen kann der Benutzer ein Element aus einer Liste auswählen. Sie verwalten die Einträge in einem PopUp-Menü über Arrays.

Ein Array ist eine Liste von Werten im Speicher, auf die über den Namen des Array verwiesen wird (siehe Handbuch 4D Programmiersprache, Abschnitt Arrays und Formularobjekte). Ein PopUp- bzw. DropDown-Liste zeigt ein Array als Liste mit Werten, wenn Sie darauf klicken. 

Die Namen “PopUp-Menü” und “DropDown-Liste” bezeichnen dasselbe Objekt; PopUp-Menü ist die Bezeichnung auf Mac OS, DropDown-Liste die Bezeichnung unter Windows.

Wie folgendes Beispiel zeigt, ist die Darstellung dieser Objekt je nach Plattform etwas anders: 

Windows
Mac OS

Sie initialisieren das Objekt durch Laden einer Werteliste in ein Array. Es gibt folgende Möglichkeiten:

  • Sie geben in den Objekteigenschaften eine Liste mit Standardwerten ein. Klicken Sie dazu in der Eigenschaftenliste unter der Gruppe „Datenquelle“ auf die Schaltfläche Bearbeiten. Weitere Informationen finden Sie im Abschnitt Liste mit Standardwerten. Die Standardwerte werden automatisch in das Array geladen. Über den Namen der Variablen, die dem Objekt zugeordnet ist, können Sie auf das Array verweisen.
  • Sie führen vor der Anzeige des Objekts einen Code aus, der den Array-Elementen Werte zuweist. Ein Beispiel:
     ARRAY TEXT(aCities;6)
     aCities{1}:="Philadelphia"
     aCities{2}:="Pittsburg"
     aCities{3}:="Grand Blanc"
     aCities{4}:="Bad Axe"
     aCities{5}:="Frostbite Falls"
     aCities{6}:="Green Bay"

    In diesem Fall muss der Name der Variablen für das Objekt im Formular aCities lauten. Dieser Code kann in die Formularmethode eingefügt und ausgeführt werden, wenn das Formularereignis On Load auftritt.
  • Laden Sie vor Anzeige eines Objekts die Werte einer Liste mit dem 4D Befehl LIST TO ARRAY in das Array. Ein Beispiel:
     LIST TO ARRAY("Cities";aCities)

    Auch hier muss der Name der Variablen für das Objekt im Formular aCities lauten. Dieser Code kann dann anstelle des oben genannten ausgeführt werden.

Wollen Sie die Auswahl des Benutzers in einem Datenfeld speichern, schreiben Sie einen Code, um die Werte zuzuweisen und führen ihn nach Bestätigen des Datensatzes aus. Die komplette Anweisung könnte folgendermaßen aussehen:

 Case of
    :(Form event=On Load)
       LIST TO ARRAY("Cities";aCities)
       If(Record number([People])<0) `neuer Datensatz
          aCities:=3 `zeigt einen Standardwert an
       Else `Bestehender Datensatz zeigt gespeicherten Wert an
          aCities:=Find in array(aCities;City)
       End if
    :(Form event=On Clicked`Vom Benutzer geänderte Auswahl
       City:=aCities{aCities`Feld erhält neuen Wert
    :(Form event=On Validate)
       City:=aCities{aCities}
    :(Form event=On Unload)
       CLEAR VARIABLE(aCities)
 End case

Unter der Gruppe „Ereignisse“ in der Eigenschaftenliste markieren Sie die Ereignisse, die in Ihrer Case-Anweisung berücksichtigt werden.
Arrays enthalten immer eine begrenzte Anzahl an Einträgen. Die Liste der Einträge ist dynamisch und kann durch eine Methode geändert werden. Einträge in einem Array lassen sich ändern und sortieren.
Weitere Informationen zum Erzeugen und Verwenden eines Arrays finden Sie im Kapitel Arrays im Handbuch 4D Programmiersprache.

Sie können einem Objekt vom Typ PopUp/DropDown-Liste oder rollbarer Bereich unter der Gruppe „Aktion“ in der Eigenschaftenliste die Aktion Gehe zu Seite zuordnen. Ist diese Aktion aktiv, zeigt 4D automatisch die Formularseite, die der Nummer des gewählten Elements in der Liste zugeordnet ist.

Wählt der Benutzer z.B. das 3. Element der Liste, zeigt 4D – sofern vorhanden – Seite 3 des aktuellen Formulars.
Wollen Sie selbst steuern, was beim Auswählen eines Elements passiert, behalten Sie die Standardoption Keine Aktion bei.

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Mit aktiven Objekten arbeiten