Bonjour , je travaille dans un treeview et j'aimerais afficher a cot� d'un noeud une petit icone (image)Est ce possible et si oui comment cela marche t'il ...
Merci de votre aide
Version imprimable
Bonjour , je travaille dans un treeview et j'aimerais afficher a cot� d'un noeud une petit icone (image)Est ce possible et si oui comment cela marche t'il ...
Merci de votre aide
Bonjour,
Regarde dans l'aide...il y a une propri�t� Images....
Maintenant je sais pas si ces images vont s'afficher ou tu le souhaites...Citation:
Envoy� par Aide bcb
Oui j'ai vu ca mais comment rajouter une image c'est ca le prob :s
http://www.developpez.net/forums/vie...uter+imagelist
Tiens... �a peut, peut etre, t'aider...
Bon courage et bon week end :)
Non ca ne m'aide pas du tout . N'y a t'il pas une moyen facile pr dire qu'au level 1 d'un treeview j'ai tel type d'icones , au niveau deux , tel type . Des bmp d�ja choisies ???
Salut !
Tout d'abord faut avoire une TListView et TListImage !
On rempli TListImage par des images...
On associe la propri�t� de ListView : Images par ImageList !
(ex ListView1->Images=ImageList1)
Puis on rempli TListView ...par example (celui de l'aide ;-) ) :
Bon avec cette exmple on juste ajouter des noeuds !Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 TTreeNode *Node1; TreeView1->Items->Clear(); // Supprime les noeuds existants // Ajoute un noeud racine TreeView1->Items->Add(NULL, "RootNode1"); /* Définit MyTreeNode sur le premier noeud de la vue arborescente et y ajoute un noeud enfant */ Node1 = TreeView1->Items->Item[0]; TreeView1->Items->Item[0]->ImageIndex=1; TreeView1->Items->AddChild(Node1,"ChildNode1"); // Ajoute un autre noeud racine TreeView1->Items->Add(Node1, "RootNode2"); /* Réinitialise Node1 à RootNode2 et lui ajoute un noeud enfant */ Node1 = TreeView1->Items->Item[2]; TreeView1->Items->AddChild(Node1,"ChildNode2"); /* Réinitialise Node1 à ChildNode2 et lui ajoute un noeud enfant */ Node1 = TreeView1->Items->Item[3]; TreeView1->Items->AddChild(Node1,"ChildNode2a"); /* Ajoute un autre enfant à ChildNode2 après ChildNode2a */ TreeView1->Items->AddChild(Node1,"ChildNode2b"); // ajoute un autre noeud racine TreeView1->Items->Add(TreeView1->Items->Item[0], "RootTreeNode3");
Pour personnaliser l'image pour chaque noued :
Code:
1
2
3 TreeView1->Items->Item[No_Noeud]->ImageIndex=Index_de_Image;
A+
Bonjour,
J'ai moi aussi un probl�me du m�me style. J'ai lu vos commentaires et j'ai r�ussi � cr�er une ImageList comportant des icones, et je les ai appel�s lors de la cr�ation de mes TTreeNodes.
Lors de la cr�ation d'un noeud, je sais s'il s'agit d'un noeud parent (comportant des fils) ou non. Je voudrais affecter une icone diff�rente selon s'il est parent ou pas.
Le probl�me que je rencontre est que l'icone change si j'expande le noeud ou si je le collapse! Je voudrais avoir la m�me icone dans les 2 �tats. Comment faire?Code:
1
2
3
4
5
6
7
8 if (.... vérif parent ...){ TTreeNode* created = ((TTreeView*)_tree)->Items->AddChild( _node , text); // ajout de l'élément dans la TreeView created->ImageIndex = 2; }else{ TTreeNode* created = ((TTreeView*)_tree)->Items->AddChild( _node , text); // ajout de l'élément dans la TreeView created->ImageIndex = 1; }
Merci d'avance!
Ben
Je viens de trouver seul une r�ponse � ma question... une r�ponse toute simple! Mais je vous en fais profiter au cas o� quelqu'un aurait la m�me: tout comme ImageIndex, il existe une variable, dans TTreeNode, pour dire l'image voulue dans le cas d'une s�lection: SelectedIndex.
BenCode:
1
2
3
4 TTreeNode* created = ((TTreeView*)_tree)->Items->AddChild( _node , text); // ajout de l'élément dans la TreeView created->ImageIndex = 1; created->SelectedIndex = 1; // pour garder la même icone quelquesoit l'état
Tiens, j'avais longtemps bloqu� sur ce satan� "SelectedIndex" que je ne connaissais pas!
J'avais d� passer par un "StateIndex" pour court-circuiter le fait que la premi�re image �tait affich�e chaque fois qu'on s�lectionne un noeud
Merci bcp pour l'info!:)