Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
FORM LIRE OBJETS
|
FORM LIRE OBJETS ( tabObjets {; tabVariables {; tabPages}} {; optionPage | *} ) | ||||||||
Paramètre | Type | Description | ||||||
tabObjets | Tableau chaîne |
![]() |
Noms des objets du formulaire | |||||
tabVariables | Tableau pointeur |
![]() |
Pointeurs sur les variables ou champs associés aux objets | |||||
tabPages | Tableau entier |
![]() |
Numéro de page de chaque objet | |||||
optionPage | * | Entier long, Opérateur |
![]() |
1=Page courante du formulaire, 2=Toutes les pages, 4=Pages héritées Si * passé (obsolète) = page courante avec objets hérités |
|||||
La commande FORM LIRE OBJETS retourne sous forme de tableau(x) la liste de tous les objets présents dans le formulaire courant. Cette liste peut être restreinte à la page courante du formulaire et peut exclure les objets des formulaires hérités. La commande peut être utilisée avec les formulaires entrée et sortie.
Note : La commande n'inclut pas les éléments list box. Pour analyser un formulaire contenant des objets list box, utilisez les commandes LISTBOX LIRE OBJETS ou LISTBOX LIRE TABLEAUX (voir l'exemple ci-dessous pour combiner FORM LIRE OBJETS, OBJET Lire type et LISTBOX LIRE OBJETS).
Si un tableau passé en paramètre n’est pas préalablement déclaré, la commande le crée et le dimensionne automatiquement. Toutefois, dans la perspective de la compilation de l’application, il est recommandé de déclarer explicitement chaque tableau.
Passez dans tabObjets le nom du tableau texte devant être rempli avec les noms des objets (chaque nom d’objet est unique au sein d’un formulaire). L’ordre dans lequel les objets apparaissent dans le tableau n’est pas significatif.
Les autres tableaux remplis facultativement par la commande sont synchronisés avec le premier.
Passez dans le paramètre facultatif tabVariables le nom du tableau de pointeurs devant être rempli avec des pointeurs vers les variables ou champs associés aux objets. Si un objet n’a pas de variable associée, le pointeur Nil est retourné. Dans le cas d’un objet de type “sous-formulaire”, un pointeur sur la table du sous-formulaire est retourné.
Le troisième tableau (facultatif), tabPages, est rempli avec les numéros de pages du formulaire. Chaque ligne de ce tableau contient le numéro de la page sur laquelle se trouve l’objet correspondant.
Le paramètre optionnel optionPage vous permet de désigner la ou les partie(s) du formulaire dont vous souhaitez lire les objets. Par défaut, si le paramètre optionPage est omis (ainsi que le paramètre *), les objets de toutes les pages, y compris les objets hérités, sont retournés. Pour délimiter la portée de la commande, vous pouvez passer une (ou une combinaison) des constantes suivantes du thème "Objets de formulaire (Accès)" dans le paramètre optionPage :
Constante | Type | Valeur | Comment |
Form hérité | Entier long | 4 | Retourne uniquement les objets hérités |
Form page courante | Entier long | 1 | Retourne tous les objets de la page courante, y compris ceux de la page 0, mais exclut les objets hérités |
Form toutes les pages | Entier long | 2 | Retourne tous les objets de toutes les pages, mais exclut les objets hérités |
Note de compatibilité : Passer le paramètre * équivaut à passer Form page courante+Form hérité. Cependant, la syntaxe utilisant le paramètre * est obsolète et ne doit plus être utilisée.
Vous souhaitez obtenir les objets de toutes les pages, y compris ceux des formulaires hérités (le cas échéant):
//Formulaire ouvert
FORM LIRE OBJETS(tabObjets;tabVariables;tabPages)
Ou :
//Formulaire chargé
FORM CHARGER([Table1];"MonForm")
FORM LIRE OBJETS(tabObjets;tabVariables;tabPages;Form toutes les pages+Form hérité)
Vous souhaitez obtenir les objets de la page courante du formulaire chargé, incluant la page 0 de ce formulaire ainsi que les objets des formulaires hérités (le cas échéant) :
FORM CHARGER("MonForm")
FORM ALLER A PAGE(2)
FORM LIRE OBJETS(tabObjets;tabVariables;tabPages;Form page courante+Form hérité)
Vous souhaitez obtenir les objets des formulaires hérités. S'il n'y a pas de formulaire hérité, les tableaux seront retournés vides.
FORM CHARGER("MonForm")
FORM LIRE OBJETS(tabObjets;tabVariables;tabPages;Form hérité)
Vous souhaitez obtenir les objets de la page 4, ainsi que ceux de la page 0, mais pas ceux des formulaires hérités (le cas échéant) :
FORM CHARGER([Table1];"MyForm")
FORM ALLER A PAGE(4)
FORM LIRE OBJETS(tabObjets;tabVariables;tabPages;Form page courante)
Vous souhaitez obtenir les objets de toutes les pages, mais sans ceux des formulaires hérités :
FORM CHARGER([Table1];"MonForm")
FORM LIRE OBJETS(tabObjets;tabVariables;tabPages;Form toutes les pages)
Vous souhaitez charger un formulaire et obtenir la liste de tous les objets des list box qu’il contient.
FORM CHARGER("MonFormulaire")
TABLEAU TEXTE(tabObjets;0)
FORM LIRE OBJETS(tabObjets)
TABLEAU ENTIER LONG(ar_type;Taille tableau(tabObjets))
Boucle($i;1;Taille tableau(tabObjets))
ar_type{$i}:=OBJET Lire type(*;tabObjets{$i})
Si(ar_type{$i}=Objet type listbox)
TABLEAU TEXTE(tabObjetsLB;0)
LISTBOX LIRE OBJETS(*;tabObjets{$i};tabObjetsLB)
Fin de si
Fin de boucle
FORM LIBERER
FORM LIRE PROPRIETES
Objets (Formulaires)
Objets de formulaire (Accès)
Produit : 4D
Thème : Formulaires
Numéro :
898
Nom intl. : FORM GET OBJECTS
Créé : 4D 2004
Renommé : 4D v12 (LIRE OBJETS FORMULAIRE)
Modifié : 4D v14 R2
4D - Langage ( 4D v20 R7)