Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
LISTBOX SELECT ROWS
|
LISTBOX SELECT ROWS ( {* ;} object ; selection {; action} ) | ||||||||
Parameter | Typ | Beschreibung | ||||||
* | Operator |
![]() |
Mit Stern: Objekt ist ein Objektname (String) Ohne Stern: Objekt ist eine Variable |
|||||
object | Formularobjekt |
![]() |
Objektname (mit *) oder Variable (ohne *) | |||||
selection | Objekt, Collection |
![]() |
Objekt oder Collection mit Zeilen zum Auswählen | |||||
action | Lange Ganzzahl |
![]() |
lk replace selection (ohne Angabe Standardeinstellung), lk add to selection, lk remove from selection | |||||
Der Befehl LISTBOX SELECT ROWS wählt die Zeilen einer Listbox Entity-Selection oder Collection, die den Entities oder Objekten im Parameter selection entsprechen.
Mit dem optionalen Parameter * geben Sie an, dass der Parameter Objekt ein Objektname (String) ist. Ohne diesen Parameter geben Sie an, dass Objekt eine Variable ist. In diesem Fall übergeben Sie eine Variablenreferenz anstelle eines String. Weitere Informationen dazu finden Sie im Abschnitt Objekteigenschaften.
Im Parameter selection übergeben Sie je nach Art der Listbox ein Object oder eine Collection:
Entity selection list box
Für diese Listbox übergeben Sie ein Objekt Entity-Selection mit Entities von derselben Dataclass wie die Listbox. Ist selection ein Objekt Entity-Selection von einer anderen Dataclass als die Listbox, wird ein Fehler zurückgegeben.
Collection list box
Für diese Listbox übergeben Sie eine Unter-Collection von Objekten aus dieser Listbox. Bei skalaren Werten übergeben Sie eine Unter-Collection von Werten.
Hinweise:
Mit dem optionalen Parameter action können Sie eine bestimmte Auswahlaktion definieren, wenn in der Listbox bereits eine Zeilenauswahl vorhanden ist. Sie können einen Wert oder eine der folgenden Konstanten unter dem Thema Listbox übergeben:
Konstante | Typ | Wert | Kommentar |
lk add to selection | Lange Ganzzahl | 1 | Die ausgewählte Zeile wird der vorhandenen Auswahl hinzugefügt. Gehört die angegebene Zeile bereits zur Auswahl, führt die Konstante nichts aus. |
lk remove from selection | Lange Ganzzahl | 2 | Die ausgewählte Zeile wird aus der vorhandenen Auswahl entfernt. Gehört die angegebene Zeile nicht zur Auswahl, führt die Konstante nichts aus. |
lk replace selection | Lange Ganzzahl | 0 | Die gewählte Zeile wird zur neuen Auswahl und ersetzt die vorhandene Auswahl. Die Konstante hat dieselbe Wirkung wie Anklicken der Zeile durch den Benutzer (Das Ereignis On Clicked wird dagegen nicht generiert). Dies ist die Standardaktion, d.h. wenn der Parameter Aktion nicht verwendet wird. |
Ohne den Parameter action ersetzt der Befehl standardmäßig die im Parameter selection definierte(n) Zeile(n).
Hinweis: Der Befehl geht davon aus, dass jedes Objekt bzw. jede Entity nur einmal in der Listbox angezeigt wird.
Rechnungen in einer Entity-Selection mit einer einzigen Anfrage an den Server auswählen:
//Beim Ereignis On Load des Formulars haben wir: Form.invoices:=ds.Invoices.all()
//Die Listbox "Invoices" zeigt die Entity-Selection Form.invoices an
C_OBJECT($cash)
C_OBJECT($card)
//Die bar bezahlten Rechnungen auswählen
$cash:=Form.invoices.query("paymentMethod=:1";"Cash")
LISTBOX SELECT ROWS(*;"Invoices";$cash;lk replace selection)
Beispiel mit einer Collection von Objekten:
C_TEXT($name)
$name:=Request("Enter a name")
If(OK=1)
// Form.studentsColl ist eine Collection von Objekten
$selection:=Form.studentsColl.query("lastname = :1";$name)
LISTBOX SELECT ROWS(*;"LBStudents";$selection;lk add selection)
End if
Produkt: 4D
Thema: Listbox
Nummer:
1715
Erstellt: 4D v18 R3
4D Programmiersprache ( 4D v20 R7)