Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com

Accueil

 
4D v20 R7
Présentation

Présentation  


 

 

Les list box sont des objets actifs complexes permettant d’afficher et de saisir des données sous forme de colonnes synchronisées. Ces objets sont semblables aux “zones de défilement groupées”, dont ils reprennent et étendent les possibilités (saisie de valeurs, tri des colonnes, apparence personnalisée, déplacement de colonnes, etc.). Un objet de type List box est entièrement paramétrable dans l’éditeur de formulaires de 4D et peut également être contrôlé par programmation.

Ce chapitre détaille les principes relatifs à la création et au paramétrage des objets de type List box dans l’éditeur de formulaires. Pour plus d’informations sur la gestion programmée de ces objets, reportez-vous au thème List Box dans le manuel Langage de 4D.

Il existe différents types de list box : les list box de type sélection, les list box de type tableau et les list box de type collection ou entity selection.

  • List box de type sélection : le nombre de lignes est basé sur une sélection courante ou une sélection temporaire. Chaque colonne est associée à un champ (par exemple [Employés]Nom) ou une expression 4D. L’expression peut être basée sur un ou plusieurs champs (par exemple [Employés]Nom+“ ”+[Employés]Prénom) ou être simplement une formule (par exemple Chaine(Millisecondes)). L’expression peut également être une méthode projet, une variable ou un élément de tableau.
    Dans le cas d’une list box basée sur la sélection courante, toute modification effectuée côté base de données est automatiquement reportée dans la list box et inversement. La sélection courante est donc toujours identique aux deux emplacements.   
  • List box de type tableau : le nombre de lignes est basé sur le nombre d’éléments d’un tableau. Chaque colonne de la list box est associée à un tableau 4D. Par défaut, 4D affecte le nom “ColonneN” à chaque variable de colonne, et donc à chaque tableau associé. Vous pouvez le modifier dans les propriétés des colonnes. Avec ce type de list box, la gestion des valeurs saisies ou affichées dans les list box s’effectue via le langage de 4D. Vous pouvez également associer une énumération à une colonne afin de contrôler la saisie (cf. section Propriétés spécifiques des colonnes de List box).
  • List box de type collection ou entity selection : Le nombre de lignes est basé sur le nombre d'éléments de la collection ou d'entités. Dans les propriétés de colonne, chaque colonne est associée à une expression 4D qui utilise généralement un chemin de propriété (voir Propriétés spécifiques des colonnes de List box). Les éléments des collections ou les entités sont retourné(e)s via la commande This (par exemple, This.nom pour afficher la valeur de la propriété/l'attribut "nom" de chaque élément/entité).
    Note : Les collections et les sélections d'entités (entity selections) sont très semblables lorsqu'elles sont utilisées en tant que source de list box. Cependant, les list box de type entity selection bénéficient de fonctionnalités supplémentaires relatives à la saisie de données par l'utilisateur (voir Gestion de la saisie) car les lignes sont alors directement connectées aux données du datastore.

Il n’est pas possible de combiner différents types de list box dans le même objet list box.

Une list box contient une ou plusieurs colonnes dont le contenu est automatiquement synchronisé. Par défaut lorsque vous créez une list box, elle contient une seule colonne. Vous pouvez modifier le nombre de colonnes (ajouter, dupliquer ou supprimer une colonne) à l’aide du menu contextuel (clic sur une colonne ou un en-tête de colonne) ou dans les propriétés de la list box. 

Le nombre de colonnes est en principe illimité (il dépend des ressources de la machine). 

Une list box est composée de quatre parties distinctes : l’objet list box dans sa globalité, les colonnes, les en-têtes et les pieds des colonnes. Dans l’éditeur de formulaires, ces parties peuvent être sélectionnées séparément. Chacune dispose de son propre nom d’objet et de propriétés spécifiques. Par exemple, le nombre de colonnes ou la couleur alternée de chaque ligne sont définies dans les propriétés de l’objet list box, la largeur de chaque colonne est définie dans les propriétés des colonnes et la police de l’en-tête est définie dans les propriétés des en-têtes.

Une list box de type tableau peut être visualisée en mode standard ou en mode hiérarchique. Les list box affichées en mode hiérarchique utilisent des mécanismes spécifiques, décrits ci-dessous. 

En exécution, les list box permettent d’afficher et de saisir des données sous forme de listes.
Pour passer une cellule en mode édition (si la saisie est autorisée pour la colonne associée), il suffit de cliquer deux fois sur la valeur qu’elle contient : 

Note : Pour plus d'informations, reportez-vous au paragraphe Gestion de la saisie dans le manuel Langage de 4D. 

Vous pouvez saisir et afficher du texte sur plusieurs lignes au sein d’une cellule de list box. Pour ajouter un retour à la ligne :

  • sous Windows, appuyez sur les touches Ctrl+Retour chariot,
  • sous Mac OS, appuyez sur les touches Option+Retour chariot.

A noter que la hauteur des lignes n’est pas redimensionnée automatiquement.

Il est possible de trier les valeurs des colonnes via un clic sur un en-tête (tri standard). Le tri est alphanumérique, alternativement croissant / décroissant lors de clics multiples. Toutes les colonnes sont toujours automatiquement synchronisées.

Note : Pour plus d'informations, reportez-vous au paragraphe Gestion des tris dans le manuel Langage de 4D. 

Il est également possible de redimensionner chaque colonne :


L’utilisateur peut modifier l’ordre des colonnes et (list box tableaux uniquement) des lignes en les déplaçant à l’aide de la souris (si cette action est autorisée) :

Enfin, l’utilisateur peut sélectionner une ou plusieurs lignes à l’aide des raccourcis standard : Maj+clic pour une sélection continue et Ctrl+clic (Windows) ou Commande+clic (Mac OS) pour une sélection discontinue.

Toutes ces caractéristiques peuvent être contrôlées via les propriétés de la list box, des colonnes, des en-têtes et des pieds. Elles sont détaillées dans les sections suivantes.

Note : Les spécificités de l'utilisation des list box en mode hiérarchique sont décrites dans la section List box hiérarchiques.

Les list box peuvent être imprimées dans les formulaires en mode "prévisualisation" (impression d'une image de la zone de list box) ou en mode "avancé" (impression dynamique en taille variable). Pour plus d'informations, reportez-vous au paragraphe Gestion des impressions dans le manuel Langage de 4D.

 
PROPRIÉTÉS 

Produit : 4D
Thème : List box
Nom intl. : Overview

 
PAGE CONTENTS 
 
HISTORIQUE 

Modifié : 4D v17

 
UTILISATION DE L'ARTICLE

4D - Mode Développement ( 4D v20 R7)