Les pop-up/listes déroulantes sont des objets qui permettent à l’utilisateur de sélectionner un élément dans une liste. Vous gérez les éléments qui apparaissent dans les listes déroulantes à l’aide de tableaux ou d’une liste de valeurs par défaut.
Un tableau est une liste de valeurs gardées en mémoire qui sont référencées par le nom du tableau (cf. section Tableaux et objets de formulaire). Un pop-up/liste déroulante affiche le tableau sous la forme d’une liste de valeurs qui apparaît lorsqu’on clique dessus.
Les noms “Pop-up” et “Liste déroulante” désignent le même objet ; “Pop-up” appartient plutôt à la terminologie Mac OS et “Liste déroulante” à celle de Windows.
Comme le montre l’exemple ci-dessous, l’apparence de ces objets diffère légèrement suivant la plate-forme :
Windows
Mac OS
Ces objets sont initialisés par le chargement d’une liste de valeurs dans un tableau. Vous pouvez réaliser cette opération de plusieurs manières :
- Saisir une liste de valeurs par défaut dans les propriétés de l’objet. Pour cela, dans le thème “Sources de données” de la Liste des propriétés, cliquez sur le bouton Edition... Pour plus d’informations sur ce point, reportez-vous au paragraphe Listes de valeurs par défaut. Les valeurs par défaut sont automatiquement chargées dans un tableau. Vous pouvez faire référence à ce tableau par l’intermédiaire du nom de la variable associée à l’objet.
- Avant que l’objet ne soit affiché, exécutez une méthode qui affecte des valeurs au tableau. Par exemple :
TABLEAU TEXTE(tVilles;6)
tVilles{1}:="Bordeaux"
tVilles{2}:="Lacanau"
tVilles{3}:="Paris"
tVilles{4}:="Ste Hélène"
tVilles{5}:="Cannes"
tVilles{6}:="Ivry"
Dans ce cas, le nom de la variable associée à l’objet dans le formulaire doit être tVilles.
Ce code peut être placé dans la méthode formulaire et être exécuté lorsque l’événement formulaire Sur chargement se produit. - Avant que l’objet ne soit affiché, chargez les valeurs d’une énumération dans le tableau à l’aide de la commande ENUMERATION VERS TABLEAU. Par exemple :
<a href="../../4D/13.4/ENUMERATION-VERS-TABLEAU.301-1218130.fr.html"class="rte4d_cmd">ENUMERATION VERS TABLEAU</a>("Villes";tVilles)
Dans ce cas également, le nom de la variable associée à l’objet dans le formulaire doit être tVilles.
Ce code peut être exécuté à la place de celui proposé plus haut.
Si vous voulez stocker dans un champ le choix de l’utilisateur, il est nécessaire d’écrire du code pour affecter les valeurs et de l’exécuter après la validation de l’enregistrement. Ce code pourrait être le suivant :
Dans la section Evénements des propriétés des objets, vous devez cocher les événements pris en compte dans les Au cas ou de votre code.
Les tableaux contiennent toujours un nombre fini d’éléments. La liste des éléments est dynamique et peut être modifiée par programmation. Les éléments d’un tableau peuvent être modifiés et triés.
Pour plus d’informations sur la création et l’utilisation d’un tableau, reportez-vous au chapitre Tableaux dans le manuel Langage de 4D.
Vous pouvez associer l’action standard Aller à page à un objet de type pop-up/liste déroulante (thème “Action” de la Liste des propriétés). Lorsque cette action est activée, 4D affiche automatiquement la page du formulaire correspondant au numéro de l’élément sélectionné dans la liste.
Par exemple, si l’utilisateur sélectionne le 3e élément de la liste, 4D affichera la page 3 du formulaire courant (si elle existe).
Si vous souhaitez gérer vous-même l’effet de la sélection d’un élément, conservez l’option par défaut Pas d’action.