DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Champs, pages et fenêtres / Fonctions Arbre
  • Branche de la feuille
  • Ordre de priorité pour le tri
  • Doublons
  • Format des images enroulées/déroulées
  • Type des images enroulées/déroulées
  • Astuce concernant les images des branches
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Ajoute un élément "feuille" (et tous les noeuds nécessaires) dans un champ Arbre.
Exemple de champ Arbre :
Vocabulaire lié à un champ Arbre
Exemple
// Ajout de la feuille "Glace" dans le champ Arbre "ARBRE_RecetteTV"
Res = ArbreAjoute(ARBRE_RecetteTV, "Recettes" + TAB + ...
		"Desserts" + TAB + "Glaces", aDéfaut, aDéfaut, IDFeuille)
// Initialisation du champ Arbre
ArbreAjoute(ARBRE_Arbre1, "Racine", aDéfaut, aDéfaut, "")
ArbreAjoute(ARBRE_Arbre1, "Racine" + TAB + "Feuille 1", aDéfaut, aDéfaut, "1")
ArbreAjoute(ARBRE_Arbre1, "Racine" + TAB + "Feuille 2", aDéfaut, aDéfaut, "2")
ArbreAjoute(ARBRE_Arbre1, "Racine" + TAB + "Feuille 3", aDéfaut, aDéfaut, "3")
ArbreAjoute(ARBRE_Arbre1, "Racine" + TAB + "Feuille 4", aDéfaut, aDéfaut, "4")
ArbreAjoute(ARBRE_Arbre1, "Racine" + TAB + "Feuille 2" + TAB + ...
		"Sous Feuille 2-1", aDéfaut, aDéfaut, "5")
ArbreAjoute(ARBRE_Arbre1, "Racine" + TAB + "Feuille 2" + TAB + ...
		"Sous Feuille 2-2", aDéfaut, aDéfaut, "6")
ArbreAjoute(ARBRE_Arbre1, "Racine" + TAB + "Feuille 2" + TAB + ...
		"Sous Feuille 2-3", aDéfaut, aDéfaut, "7")
ArbreAjoute(ARBRE_Arbre1, "Racine" + TAB + "Feuille 2" + TAB + ...
		"Sous Feuille 2-4", aDéfaut, aDéfaut, "8")
ArbreAjoute(ARBRE_Arbre1, "Racine" + TAB + "Feuille 2" + TAB + ...
		"Sous Feuille 2-5", aDéfaut, aDéfaut, "9")

// Sélection d'une ligne du champ Arbre
ArbreSelectPlus(ARBRE_Arbre1, "Racine" + TAB + "Feuille 2" + TAB + "Sous Feuille 2-5")
Syntaxe
<Résultat> = ArbreAjoute(<Champ Arbre> , <Chemin de la feuille> [, <Image enroulée> [, <Image déroulée> [, <Identifiant de la feuille> [, <Mode d'ajout> [, <Texte de la bulle d'aide>]]]]])
<Résultat> : Booléen
  • Vrai si la feuille a été ajoutée au champ Arbre,
  • Faux dans le cas contraire.
<Champ Arbre> : Nom de champ
Nom du champ Arbre à manipuler.
<Chemin de la feuille> : Chaîne de caractères
Chemin complet de la feuille à ajouter dans le champ Arbre. Ce paramètre est de la forme :
"<Nom de la racine>" + TAB + ["<Nom du 1er noeud>" + TAB + ...
["<Nom du 2ème noeud>" + TAB + [...]]]"<Nom de la feuille>"
En cas de doublons sur un élément du chemin, ce chemin peut contenir l'identifiant de l'élément (indiqué à la suite du nom de la feuille grâce à la fonction ArbreID).
<Image enroulée> : Chaîne de caractères ou constante optionnelle
Image associée à l'élément. Cette image est affichée lorsque l'élément est un noeud enroulé (voir Remarques). En exécution, le libellé d'un noeud enroulé est précédé du signe "+".
Ce paramètre correspond :
  • soit au nom et au chemin complet (ou relatif) de l'image. Un chemin de type UNC peut être utilisé.
  • soit à la constante :
    aDéfaut
    (Valeur par défaut)
    Image par défaut (dossier fermé) :Dossier fermé
    NullAucune image
<Image déroulée> : Chaîne de caractères ou constante optionnelle
Image associée à l'élément. Cette image est affichée lorsque l'élément est un noeud déroulé (voir Remarques). En exécution, le libellé d'un noeud déroulé est précédé du signe "-".
Ce paramètre correspond :
  • soit au nom et au chemin complet (ou relatif) de l'image. Un chemin de type UNC peut être utilisé.
  • soit à la constante :
    aDéfaut
    (Valeur par défaut)
    Image par défaut (dossier ouvert) : Dossier ouvert
    NullAucune image
<Identifiant de la feuille> : Chaîne de caractères ou entier (optionnel)
Identifiant associé à un élément spécifique du champ Arbre. Par défaut, ce paramètre correspond à une chaîne vide (""). Pour associer un identifiant à un élément déjà créé, utilisez la fonction ArbreModifie.
Attention :
  • Ce paramètre est obligatoire si une gestion des doublons par identifiant a été mise en place.
  • Le caractère de tabulation (TAB) est interdit dans les identifiants des éléments.
<Mode d'ajout> : Constante (ou combinaison de constantes) optionnelle
Position de l'élément (la feuille) ajouté par rapport aux éléments du même niveau dans le champ Arbre.
aAccepteDoublonLes doublons sont acceptés (deux éléments de même niveau peuvent avoir le même nom). La feuille ajoutée est insérée suivant l'ordre alphabétique, parmi les éléments du même niveau.
aDernierLa feuille est ajoutée à la dernière place du niveau.
aPremierLa feuille est ajoutée à la première place du niveau.
aTriAlpha
(Valeur par défaut)
La feuille ajoutée est insérée suivant l'ordre alphabétique, parmi les éléments du même niveau.
<Texte de la bulle d'aide> : Chaîne de caractères optionnelle
Si ce paramètre est précisé, son contenu sera affiché lors du survol de l'élément dans une bulle d'aide. Par défaut, ce paramètre correspond à une chaîne vide (""). Si aucune bulle d'aide n'est associée à l'élément, la bulle d'aide associée au champ Arbre sera automatiquement affichée.
Remarques

Branche de la feuille

Si un des niveaux supérieurs à la feuille ajoutée n'existe pas et n'est pas associé à un identifiant (gestion des doublons), ce niveau est automatiquement créé. Les caractéristiques de ce nouveau niveau (ou branche de l'élément) sont les suivantes :
  • image enroulée et image déroulée par défaut (constante aDéfaut),
  • identifiant égal à Null,
  • mode d'ajout correspondant à la constante aDernier.
Si un des niveaux supérieurs à la feuille est associé à un identifiant et si ce niveau n'existe pas ou n'est pas associé à cet identifiant, une erreur WLangage apparaît. En effet, il est nécessaire de créer tous les niveaux supérieurs avec leurs identifiants respectifs pour pouvoir les manipuler.

Ordre de priorité pour le tri

L'ordre de priorité des paramètres du mode d'ajout est le suivant :
  • aPremier
  • aDernier
  • aTriAlpha
Par exemple, dans l'expression aPremier + aDernier + aTriAlpha, seule la constante aPremier est prise en compte.

Doublons

L'acceptation des doublons est à manipuler avec précaution (constante aAccepteDoublon). En effet, il est nécessaire de gérer un identifiant spécifique pour identifier le niveau où l'ajout doit être effectué. Pour plus de détails, consultez Gestion des doublons dans les champs Arbre.
Si cette gestion n'est pas effectuée, quelques incohérences peuvent survenir.
Par exemple : Si deux "Niveau 2" existent, dans lequel faut-il rajouter "Niveau 3" ? Impossible de trouver quel est le "Niveau 2" à manipuler. Par défaut, l'ajout sera effectué dans le premier élément trouvé.
Gestion des doublons
En cas d'ajout d'un élément déjà existant dans un niveau, la fonction ArbreAjoute retourne Faux si le mode d'ajout n'a pas été défini avec la constante aAccepteDoublon. L'élément n'est pas ajouté.

Format des images enroulées/déroulées

WEBDEV - Code Serveur Les formats d'images reconnus sont les suivants : GIF, JPEG, PNG ou SVG (selon le support des navigateurs).

Type des images enroulées/déroulées

Les images utilisées peuvent être :
L'image spécifiée est réduite proportionnellement à la taille 16 x 16 pixels : dans la majorité des cas, la hauteur de l'image correspond à la hauteur de la ligne du champ Arbre.
WEBDEV - Code Serveur Les images utilisées peuvent uniquement être des fichiers image. Ces fichiers doivent être présents dans le répertoire "<NomProjet>_WEB". Ces images ne sont pas transformées lors de l'enregistrement de la page. Il n'est pas nécessaire d'utiliser la fonction fRepWeb pour indiquer le chemin de l'image. Ce chemin est relatif au répertoire "<NomProjet>_WEB".
Remarque : Il est conseillé d'utiliser des images 16 x 16 pixels (taille des petites icônes).

Astuce concernant les images des branches

Attention : Si le nom de l'image ne change pas entre deux appels à la fonction ArbreAjoute, l'image n'est pas rechargée en mémoire (même si son contenu a changé).
Exemple : Le code suivant crée une image de même nom, avec un contenu différent, et utilise cette image pour chaque appel à la fonction ArbreAjoute : dans ce cas, la même image sera toujours utilisée.
POUR I = 1 Ã€ 10
	// Procédure permettant de créer un fichier image de type xx.BMP
	// Le contenu change à chaque itération
	CréerImage(I)
	ArbreAjoute(ARBRE_MonArbre, "xx", "xx.BMP")
FIN
Solution : Pour utiliser la bonne image, il faut donner un nouveau nom pour chaque nouvelle image créée. Par exemple :
POUR I = 1 Ã€ 10
	// Procédure permettant de créer un fichier image 
	// de type "xx" + I + ".BMP"
	// Le contenu change à chaque itération
	CréerImage(I)
	ArbreAjoute(ARBRE_MonArbre, "xx", "xx" + I + ".BMP")
FIN
Composante : wd300obj.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 03/01/2024

Signaler une erreur ou faire une suggestion | Aide en ligne locale