TreeGadget()

Syntaxe

Resultat = TreeGadget(#Gadget, X, Y, Largeur, Hauteur [, Options])
Description
Crée un gadget liste arborescente dans la GadgetList en cours.

Arguments

#Gadget Le numéro d'identification du nouveau gadget.

#PB_Any peut être utilisé pour générer automatiquement ce numéro.
X, Y, Largeur, Hauteur La position et les dimensions du nouveau gadget.
Options (optionnel) Peut être une combinaison de:
  #PB_Tree_AlwaysShowSelection: Montre toujours la sélection, même si le gadget n'est plus actif.
  #PB_Tree_NoLines            : Cache les lignes reliant les noeuds.
  #PB_Tree_NoButtons          : Cache les boutons des noeuds.
  #PB_Tree_CheckBoxes         : Ajoute une case à cocher devant chaque élément.
  #PB_Tree_ThreeState         : Les cases à cocher peuvent avoir un état "indéterminé".
L'option #PB_Tree_ThreeState peut être utilisée en combinaison avec l'option #PB_Tree_CheckBoxes pour obtenir des cases à cocher qui peuvent avoir un état "on", "off" et "indéterminé". L'utilisateur ne peut sélectionner que les états "on" ou "off". L'état "indéterminé" peut être défini en utilisant la fonction SetGadgetItemState().

Valeur de retour

Renvoie une valeur non nulle en cas de succès, zéro sinon.

Si #PB_Any a été utilisé pour le paramètre #Gadget, alors la valeur de retour est le numéro d'identification du gadget, généré automatiquement.

Remarques

Chaque branche de l'arbre a un niveau assigné qui détermine la relation qu'il a avec l'élément du dessus et du dessous. Les éléments avec le même niveau appartiennent à la même branche, les éléments avec un niveau supérieur sont les fils etc. Le paramètre 'Options' de la commande AddGadgetItem() est toujours requis pour les éléments du TreeGadget() et sert à spécifier le niveau de l'élément ajouté. A noter que si un élément est ajouté avec un niveau invalide alors il sera quand même ajouté, au niveau le plus proche.
  - GadgetToolTip() permet d'ajouter une 'mini aide' à ce gadget. 

  Les fonctions suivantes peuvent alors être utilisées pour agir sur le contenu de cette liste :
  - AddGadgetItem()     : Ajoute un élément, et éventuellement une icône
  - RemoveGadgetItem()  : Efface un élément (et ses sous-éléments)
  - ClearGadgetItems()  : Supprime tous les éléments
  - CountGadgetItems()  : Renvoie le nombre d'éléments actuellement contenus dans le gadget.
  - GetGadgetItemState(): Renvoie l'état de l'élément spécifié.
  - SetGadgetItemState(): Change l'état de l'élément spécifié.
  - GetGadgetItemText() : Renvoie le texte de l'élément spécifié.
  - SetGadgetItemText() : Change le texte de l'élément spécifié.
  - SetGadgetItemImage(): Change l'image actuelle de l'élément spécifié.
  - GetGadgetItemData() : Renvoie la valeur personnalisée associée à cet élément.
  - SetGadgetItemData() : Associe une valeur personnalisée à cet élément.
  - GetGadgetState()    : Renvoie l'élément selectionné.
  - SetGadgetState()    : Change l'élément selectionné.
  - GetGadgetText()     : Renvoie le texte de l'élément sélectionné.
  - SetGadgetText()     : Change le texte de l'élément sélectionné.
  - GetGadgetItemAttribute() avec l'attribut suivant:
    #PB_Tree_SubLevel: Renvoie le niveau actuel de l'élément dans l'arbre.
  
  - GadgetItemID(): Renvoie le 'handle' système de l'élément spécifié (utile pour les fonctions API)

  - SetGadgetColor() et GetGadgetColor() avec les  valeurs 'TypeCouleur' suivantes:
    #PB_Gadget_FrontColor: Couleur du texte
    #PB_Gadget_BackColor : Couleur du fond
    #PB_Gadget_LineColor : Couleur des lignes reliant les noeuds

  - SetGadgetItemColor() et GetGadgetItemColor() avec les valeurs 'TypeCouleur' suivantes:
    #PB_Gadget_FrontColor: Texte de l'élément.
    #PB_Gadget_BackColor : Fond de l'élément.

  Les évènements suivants sont supportés par EventType():
    #PB_EventType_LeftClick        : Clic gauche sur un élément, ou une case à cocher a été cochée/décochée.
    #PB_EventType_LeftDoubleClick  : Double-clic gauche sur un élément.
    #PB_EventType_RightClick       : Clic droit sur un élément.
    #PB_EventType_RightDoubleClick : Double-Clic droit sur un élément.
    #PB_EventType_Change           : L'élément courant a changé
    #PB_EventType_DragStart        : L'utilisateur a essayé de lancer une opération 'Glisser & Déposer'.

  Après un évènement #PB_EventType_DragStart, la bibliothèque Drag & Drop peut être utilisée pour commencer une opération de 'Glisser & Déposer'.

Exemple

  If OpenWindow(0, 0, 0, 355, 180, "TreeGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) 
    TreeGadget(0, 10, 10, 160, 160)                                           ; liste arborescente standard
    TreeGadget(1, 180, 10, 160, 160, #PB_Tree_CheckBoxes | #PB_Tree_NoLines)  ; liste arborescente avec cases à cocher + sans lignes reliant les noeuds
    For ID = 0 To 1
      For a = 0 To 10
        AddGadgetItem(ID, -1, "Elément normal "+Str(a), 0, 0) ; si vous souhaitez ajouter une image, utilisez 
        AddGadgetItem(ID, -1, "Noeud "+Str(a), 0, 0)          ; ImageID(x) comme 4ème paramètre
        AddGadgetItem(ID, -1, "Sous-élément 1", 0, 1)         ; Ceux-là sont au premier sous-niveau 
        AddGadgetItem(ID, -1, "Sous-élément 2", 0, 1)
        AddGadgetItem(ID, -1, "Sous-élément 3", 0, 1)
        AddGadgetItem(ID, -1, "Sous-élément 4", 0, 1)
        AddGadgetItem(ID, -1, "Fichier "+Str(a), 0, 0) ; sous-niveau 0 à nouveau
      Next
    Next
    Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
  EndIf

Voir aussi

AddGadgetItem(), RemoveGadgetItem(), ClearGadgetItems(), CountGadgetItems(), GetGadgetItemState(), SetGadgetItemState(), GetGadgetItemText(), SetGadgetItemText(), SetGadgetItemImage(), GetGadgetItemData(), SetGadgetItemData(), GetGadgetState(), SetGadgetState(), GetGadgetText(), SetGadgetText(), GetGadgetItemAttribute(), SetGadgetItemImage(), GadgetItemID(), GetGadgetColor(), SetGadgetColor(), ExplorerTreeGadget()

OS Supportés

Tous

<- TrackBarGadget() - Gadget Index - UnbindGadgetEvent() ->