4D v14.3OBJET DUPLIQUER |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v14.3
OBJET DUPLIQUER
|
OBJET DUPLIQUER ( {* ;} objet {; nouvNom {; nouvVar {; reliéA {; dépH {; dépV {; redimH {; redimV}}}}}}} {; *} ) | ||||||||
Paramètre | Type | Description | ||||||
* | Opérateur |
![]() |
Si spécifié, objet est un nom d'objet (chaîne) Si omis, objet est une variable ou un champ | |||||
objet | Objet de formulaire |
![]() |
Nom d'objet (si * est spécifié) ou Variable ou champ (si * est omis) | |||||
nouvNom | Texte |
![]() |
Nom du nouvel objet | |||||
nouvVar | Pointeur |
![]() |
Pointeur vers la variable du nouvel objet | |||||
reliéA | Texte |
![]() |
Nom de l’objet saisissable (ou du bouton radio) précédent | |||||
dépH | Entier long |
![]() |
Décalage horizontal du nouvel objet (>0 = vers la droite, <0 = vers la gauche) | |||||
dépV | Entier long |
![]() |
Décalage vertical du nouvel objet (>0 = vers le bas, <0 = vers le haut) | |||||
redimH | Entier long |
![]() |
Valeur de redimensionnement horizontal du nouvel objet | |||||
redimV | Entier long |
![]() |
Valeur de redimensionnement vertical du nouvel objet | |||||
* | Opérateur |
![]() |
Si spécifié = coordonnées absolues Si omis = coordonnées relatives | |||||
La commande OBJET DUPLIQUER permet de créer une copie de l’objet désigné par le paramètre objet dans le contexte du formulaire en cours d’exécution (mode Application). Le formulaire d’origine, généré en mode Développement, n’est pas modifié.
Par défaut, toutes les options définies dans la Liste des propriétés pour l’objet source sont appliquées à la copie (taille, options de redimensionnement, couleur, etc.), y compris la méthode objet éventuellement associée. Les exceptions suivantes sont toutefois à noter :
Si vous passez le paramètre optionnel *, vous indiquez que le paramètre objet désigne le nom d’un objet (une chaîne). Si vous ne passez pas le paramètre *, vous indiquez que le paramètre objet désigne un champ ou une variable. Dans ce cas, vous ne passez pas une chaîne de caractères mais la référence du champ ou de la variable (champs ou variables objets uniquement).
Si vous passez une référence de champ ou de variable et si le formulaire contient plusieurs objets utilisant la même référence, la première occurrence trouvée est utilisée. Dans ce cas, pour éviter toute ambiguïté, il est conseillé de travailler avec les noms d’objets, qui sont uniques.
Passez dans le paramètre nouvNom le nom attribué à la copie de l’objet. Ce nom doit être conforme aux règles de nommage des objets et être unique dans le formulaire. S’il est invalide ou est déjà utilisé par un autre objet, la commande ne fait rien et la variable OK retourne 0.
Si vous omettez ce paramètre ou passez une chaîne vide, le nouveau nom est automatiquement généré par incrémentation du nom de l’objet source (si ce nom n’est pas déjà utilisé). Par exemple :
Nom d’origine | Nom de la copie |
Bouton | Bouton 1 |
Bouton20 | Bouton21 |
Bouton21 | Bouton23 si Bouton22 existe déjà |
Passez dans nouvVar un pointeur vers la variable à associer au nouvel objet. Vous devez en principe pointer vers une variable du même type que celle de l’objet d’origine mais certains "retypages" sont possibles. La commande propose des automatismes facilitant l’écriture de code générique :
Si le type de la variable est incompatible avec l’objet, la commande ne fait rien et la variable OK prend la valeur 0. Si vous omettez ce paramètre, la variable est créée dynamiquement par 4D (cf. paragraphe “Variables dynamiques” dans la section Variables). Si vous dupliquez un objet statique (ligne, rectangle, image statique...) ce paramètre est ignoré. Passez un pointeur Nil (->[]) si vous souhaitez pouvoir utiliser les autres paramètres.
Vous utilisez le paramètre reliéA dans deux cas :
Si vous omettez ce paramètre ou passez une chaîne vide, le nouvel objet devient le dernier objet saisissable de la page du formulaire. Dans le cas d’un bouton radio, l’objet est rattaché au groupe du bouton source.
Le nouvel objet peut être déplacé et redimensionné via les paramètres dépH, dépV, redimH et redimV. Comme pour la commande OBJET DEPLACER, le sens du déplacement ou du redimensionnement est défini par le signe des valeurs passées dans les paramètres dépH et dépV :
Par défaut, les valeurs de dépH, dépV, redimH et redimV modifient les coordonnées de l’objet relativement à sa position précédente. Si vous souhaitez que ces paramètres définissent des coordonnées absolues, passez le dernier paramètre optionnel *.
Si vous omettez ces paramètres, le nouvel objet se superpose à l’objet d’origine.
Cette commande doit être utilisée dans le contexte de l’affichage d’un formulaire. Elle sera généralement appelée dans l’événement Sur chargement du formulaire ou suite à une action utilisateur (événement Sur clic).
Note : Si l’événement Sur chargement est associé à l’objet d’origine, il est généré pour l’objet dupliqué au moment de l’exécution de la commande. Ce principe permet par exemple d’initialiser la valeur de l’objet.
Pour des raisons techniques et logiques, OBJET DUPLIQUER ne peut pas être appelée dans le cadre de certains événements formulaire, notamment :
Lorsque la commande est appelée dans un contexte non pris en charge, l’objet n’est pas dupliqué et la variable OK prend la valeur 0. Si elle est appelée dans un contexte d’impression, l’erreur -10601 est en outre générée.
Si la commande est exécutée correctement, la variable OK prend la valeur 1. Sinon, elle prend la valeur 0.
Création d’un nouveau bouton nommé "BoutonAnnul" au-dessus de l’objet existant "BoutonOK" et association à la variable vAnnul :
OBJET DUPLIQUER(*;"BoutonOK";"BoutonAnnul";vAnnul)
Création d’un nouveau bouton radio "bRadio6" basé sur le bouton radio existant "bRadio5". Ce bouton sera associé à la variable <>r6, intégré au groupe du bouton "bRadio5" et placé 20 pixels au-dessous :
OBJET DUPLIQUER(*;"bRadio5";"bRadio6";<>r6;"bRadio5";0;20)
Produit : 4D
Thème : Objets (Formulaires)
Numéro :
1111
Nom intl. : OBJECT DUPLICATE
Créé : 4D v12
OBJET DEPLACER
OBJET Lire pointeur
Objets de formulaire (Accès)
4D - Langage ( 4D v12.4)
4D - Langage ( 4D v14 R3)
4D - Langage ( 4D v14 R2)
4D - Langage ( 4D v13.5)
4D - Langage ( 4D v14.3)
4D - Langage ( 4D v14 R4)