4D v16.3

LISTBOX INSERT COLUMN

Home

 
4D v16.3
LISTBOX INSERT COLUMN

LISTBOX INSERT COLUMN 


 

LISTBOX INSERT COLUMN ( {* ;} Objekt ; SpaltePos ; SpalteName ; SpalteVar ; KopfName ; KopfVar {; FußName ; FußVar} )  
Parameter Typ   Beschreibung
Operator in Mit *: Objekt ist ein Objektname (String),
Ohne *: Objekt ist eine Variable
Objekt  Formularobjekt in Mit *: Objektname, Ohne *: Variable
SpaltePos  Lange Ganzzahl in Setzen der einzufügenden Spalte
SpalteName  String in Name des Spaltenobjekts
SpalteVar  Array, Feld, Variable, Nil pointer in Name der Spalte des Array, Feldes oder der Variablen
KopfName  String in Name des Objekts Spaltentitel
KopfVar  Variable Ganzzahl, Nil pointer in Variable des Spaltentitels
FußName  String in Objektname des Spaltenfußteils
FußVar  Variable, Nil pointer in Variable des Spaltenfußteils

Der Befehl LISTBOX INSERT COLUMN fügt eine Spalte in die Listbox ein, definiert durch die Parameter Objekt und *.

Mit dem optionalen Parameter * geben Sie an, dass Objekt ein Objektname (String) ist. Ohne diesen Parameter ist Objekt eine Variable. In diesem Fall übergeben Sie keinen String, sondern die Referenz auf eine Variable. Weitere Informationen zu Objektnamen finden Sie im Abschnitt Objekteigenschaften.
Die neue Spalte wird unmittelbar vor der Spalte eingefügt, die im Parameter SpaltePos angegeben ist. Ist SpaltePos größer als die Gesamtanzahl der Spalten, wird sie nach der letzten Spalte angefügt.

In SpalteName und SpalteVar übergeben Sie den Namen des Objekts und die Variable der eingefügten Spalte.

  • Bei einem Array vom Typ Listbox muss der Variablenname zum Namen des Array passen, dessen Inhalt in der Spalte angezeigt wird. In einem dynamischen Kontext können Sie einen Zeiger Nil (->[]) übergeben (siehe unten).
  • Bei einer Auswahl vom Typ Listbox müssen Sie in SpalteVar ein Datenfeld oder eine Variable übergeben. Der Inhalt der Spalte ist dann der Wert des Datenfeldes oder der Variablen, der für jeden Datensatz der der Listbox zugewiesenen Auswahl bewertet wird. Dieser Inhalt ist nur möglich, wenn die Eigenschaft "Datenquelle" der Listbox die aktuelle oder die temporäre Auswahl ist. Weitere Informationen dazu finden Sie im Abschnitt Einführung in Listboxen. Sie können Datenfelder oder Variablen vom Typ String, Zahl, Datum, Zeit, Bild und Boolean verwenden.

Bei Listboxen, die auf einer Auswahl basieren, können Sie über LISTBOX INSERT COLUMN einfache Elemente wie Datenfelder oder Variablen einfügen. Zur Verwaltung komplexer Ausdrücke, wie Formeln oder Methoden benötigen Sie den Befehl LISTBOX INSERT COLUMN FORMULA.

Hinweis: Sie können in derselben Listbox nicht Felder bzw. Variablen (Datenquelle Auswahl) und Arrays (Datenquelle Array) miteinander kombinieren.

In KopfName und KopfVar übergeben Sie den Objektnamen und die Variable für den eingefügten Spaltentitel.

In FußName und FußVar können Sie den Objektnamen und die Variable des Fußteils der eingefügten Spalte übergeben.

Hinweis: Objektnamen müssen in einem Formular einmalig sein. Stellen Sie sicher, dass die in SpalteName, KopfName und FußName übergebenen Namen noch nicht verwendet wurden. Sonst wird die Spalte nicht erstellt und ein Fehler erscheint.

Ab 4D v14 R3 können Sie mit diesem Befehl Spalten dynamisch in Listboxen einfügen, wenn das Formular ausgeführt wird. 4D verwaltet automatisch die Definition der erforderlichen Variablen (Spalten, Fußteil und Kopfteil).

Dazu akzeptiert LISTBOX INSERT COLUMN einen Zeiger Nil (->[]) als Wert für die Parameter SpalteVariable (nur für Listboxen vom Typ Array), KopfVariable und FußVariable. In diesem Fall erstellt 4D beim Ausführen des Befehls die erforderlichen Variablen dynamisch. Weitere Informationen dazu finden Sie im Abschnitt Dynamische Variablen

Beachten Sie, dass Variablen für Kopf- und Fußteil immer mit den spezifischen Typ Lange Ganzzahl bzw. Text erstellt werden. Im Gegensatz dazu lassen sich Variablen für Spalten nicht beim Erstellen typisieren, da die Listbox für diese Variable verschiedene Arraytypen erlaubt (Array Text, Array Ganzzahl, etc.). Deshalb müssen Sie den Arraytyp manuell setzen (siehe Beispiel 3). Es ist wichtig, den Arraytyp vor Verwenden von Befehlen wie LISTBOX INSERT ROWS zu setzen, um neue Elemente in das Array einzufügen. Alternativ lässt sich auch der Befehl APPEND TO ARRAY verwenden, um gleichzeitig den Arraytyp zu setzen und das Einfügen von Elementen zu starten.

Folgender Code fügt am Ende der Listbox eine Spalte hinzu:

 C_LONGINT(HeaderVarName;$Last;RecNum)
 ALL RECORDS([Table 1])
 $RecNum:=Records in table([Table 1])
 ARRAY PICTURE(Picture;$RecNum)
 
 $Last:=LISTBOX Get number of columns(*;"ListBox1")+1
 LISTBOX INSERT COLUMN(*;"ListBox1";$Last;"ColumnPicture";Picture;
 "HeaderPicture";HeaderVarName)

Folgender Code fügt an die rechte Seite der Listbox eine Spalte hinzu und weist ihr die Werte aus dem Datenfeld [Transport]Fees zu

 $last:=LISTBOX Get number of columns(*;"ListBox1")+1
 LISTBOX INSERT COLUMN(*;"ListBox1";$last;"FieldCol";[Transport]Fees;"HeaderName";HeaderVar)

Eine Spalte dynamisch in eine Listbox vom Typ Array setzen und ihren Kopfteil definieren:

 C_POINTER($NilPtr)
 LISTBOX INSERT COLUMN(*;"MyListBox";1;"MyNewColumn";$NilPtr;"MyNewHeader";$NilPtr)
 ColPtr:=OBJECT Get pointer(Object named;"MyNewColumn")
 ARRAY TEXT(ColPtr->;10)
  //Kopfteil definieren
 headprt:=OBJECT Get pointer(Object named;"MyNewHeader")
 OBJECT SET TITLE(headprt->;"Eingefügter Kopfteil")



Siehe auch 

LISTBOX DELETE COLUMN
LISTBOX INSERT COLUMN FORMULA

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Listbox
Nummer: 829

 
GESCHICHTE 

Geändert: 4D v11 SQL
Umbenannt: 4D v12
Geändert: 4D v13
Geändert: 4D v14 R3

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v16)
4D Programmiersprache ( 4D v16.1)
4D Programmiersprache ( 4D v16.2)
4D Programmiersprache ( 4D v16.3)