Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
FORM GET OBJECTS
|
FORM GET OBJECTS ( ArrayObjekte {; ArrayVariablen {; ArraySeiten}} {; FormSeiteOption} ) | ||||||||
Parameter | Typ | Beschreibung | ||||||
ArrayObjekte | Array String |
![]() |
Name der Formularobjekte | |||||
ArrayVariablen | Array Zeiger |
![]() |
Zeiger auf Variablen oder Felder, die Objekten zugeordnet sind | |||||
ArraySeiten | Array Ganzzahl |
![]() |
Seitennummer für jedes Objekt | |||||
FormSeiteOption | Lange Ganzzahl, Operator |
![]() |
1=Form current page, 2=Form all pages, 4=Form inherited
Mit * (überholt) = Aktuelle Seite mit vererbten Objekten |
|||||
Der Befehl FORM GET OBJECTS gibt die Liste aller Objekte im aktuellen Formular als Array zurück. Diese Liste lässt sich auf die aktuelle Formularseite beschränken. Der Befehl lässt sich mit Eingabe- und Ausgabeformularen verwenden.
Hinweis: Dieser Befehl gilt nicht für Teile von Listboxen. Für ein Formular mit Listbox Objekten verwenden Sie den Befehle LISTBOX GET OBJECTS oder LISTBOX GET ARRAYS. Unten sehen Sie ein Beispiel für die Kombination von FORM GET OBJECTS, OBJECT Get type und LISTBOX GET OBJECTS).
Wurde ein als Parameter übergebenes Array nicht zuvor deklariert, legt der Befehl dieses an und setzt seine Größe automatisch. Es empfiehlt sich jedoch, jedes Array explizit zu deklarieren, da Sie in der Regel Ihre Anwendung kompilieren.
In ArrayObjekte übergeben Sie den Namen des String Array mit den Objektnamen. Jeder Objektname innerhalb eines Formulars ist einmalig. Die Reihenfolge der Objekte ist ohne Bedeutung.
Die weiteren Arrays füllt der Befehl bei Bedarf, sie werden mit dem ersten Array synchronisiert.
Im optionalen Parameter ArrayVariablen übergeben Sie den Namen des Array mit Zeigern. Es enthält bereits die Zeiger auf die Variablen/Felder, die Objekten zugeordnet sind. Für Objekte ohne Variable wird der Zeiger Is nil pointer zurückgegeben. Für Objekte vom Typ Unterformular wird ein Zeiger auf die Tabelle des Unterformulars zurückgegeben.
Der optionale Parameter ArraySeiten enthält die jeweiligen Seitennummern zu den Objekten im Formular. Jede Zeile dieses Array enthält die Seitennummer des dazugehörigen Objekts.
Objekte aus einem vererbten Formular gehören zur Seite 0 der aktuellen Seite.
Mit dem optionalen Parameter * können Sie die Liste der zurückgegebenen Objekte auf die aktuelle Seite des Formulars beschränken. Dann gibt der Befehl nur die Objekte der aktuellen Seite, von Seite 0 und den vererbten Seiten zurück, d.h. der Befehl bearbeitet alle Objekte auf der aktuellen Seite, egal ob sichtbar oder nicht.
Mit dem optionalen Parameter FormSeiteOption können Sie bestimmte Teile des Formulars angeben, aus denen Sie Objekte erhalten wollen. Standardmäßig, also ohne den Parameter FormSeiteOption (und ohne den Parameter *), werden Objekte von allen Seiten zurückgegeben, inkl. vererbte Objekte. Um die Reichweite des Befehls zu reduzieren, übergeben Sie einen Wert in FormSeiteOption. Sie können eine oder mehrere kombinierte Konstanten aus dem Thema Formularobjekte (Zugriff) übergeben:
Konstante | Typ | Wert | Kommentar |
Form all pages | Lange Ganzzahl | 2 | gibt alle Objekte von allen Seiten ohne vererbte Objekte zurück |
Form current page | Lange Ganzzahl | 1 | Gibt alle Objekte der aktuellen Seite zurück, einschließlich der Seite 0, aber ohne vererbte Objekte |
Form inherited | Lange Ganzzahl | 4 | Gibt nur die vererbten Objekte zurück |
Hinweis zur Kompatibilität: Die Übergabe des Parameters * ist dasselbe wie Übergeben der Konstanten Form current page+Form inherited. Die Syntax mit dem Parameter * ist jetzt überholt und sollte nicht mehr verwendet werden.
Information auf allen Seiten erhalten, einschließlich Objekten von vererbten Formularen (sofern vorhanden):
//offenes Formular
FORM GET OBJECTS(objectsArray;variablesArray;pagesArray)
Oder:
//geladenes Formular
FORM LOAD([Table1];"MyForm")
FORM GET OBJECTS(objectsArray;variablesArray;pagesArray;Form all pages+Form inherited)
Nur Information auf der aktuellen Seite erhalten, mit Seite 0 des geladenen Formulars und vererbten Formularobjekten (sofern vorhanden):
FORM LOAD("MyForm")
FORM GOTO PAGE(2)
FORM GET OBJECTS(objectsArray;variablesArray;pagesArray;Form current page+Form inherited)
Information von allen Objekten im vererbten Formular (sofern vorhanden) erhalten. Gibt es kein vererbtes Formular, werden die Arrays leer zurückgegeben.
FORM LOAD("MyForm")
FORM GET OBJECTS(objectsArray;variablesArray;pagesArray;Form inherited)
Information von Objekten auf Seite 4 erhalten, einschließlich Objekten von Seite 0, aber ohne vererbte Formularobjekte (sofern vorhanden):
FORM LOAD([Table1];"MyForm")
FORM GOTO PAGE(4)
FORM GET OBJECTS(objectsArray;variablesArray;pagesArray;Form current page)
Information von Objekten auf allen Seiten erhalten, jedoch ohne vererbte Formularobjekte (sofern vorhanden):
FORM LOAD([Table1];"MyForm")
FORM GET OBJECTS(objectsArray;variablesArray;pagesArray;Form all pages)
Ein Formular laden und eine Liste mit allen Objekten in der Listbox erhalten.
FORM LOAD("MyForm")
ARRAY TEXT(arrObjects;0)
FORM GET OBJECTS(arrObjects)
ARRAY LONGINT(ar_type;Size of array(arrObjects))
For($i;1;Size of array(arrObjects))
ar_type{$i}:=OBJECT Get type(*;arrObjects{$i})
If(ar_type{$i}=Object type listbox)
ARRAY TEXT(arrLBObjects;0)
LISTBOX GET OBJECTS(*;arrObjects{$i};arrLBObjects)
End if
End for
FORM UNLOAD
FORM GET PROPERTIES
Formularobjekte (Zugriff)
Objekte (Formulare)
Produkt: 4D
Thema: Formulare
Nummer:
898
Erstellt: 4D 2004
Umbenannt: 4D v12 (GET FORM OBJECTS)
Geändert: 4D v14 R2
4D Programmiersprache ( 4D v20 R7)