Forcer la selection dans un TTreeView [Résolu]

Messages postés
95
Date d'inscription
mardi 15 mars 2005
Dernière intervention
2 juillet 2007
- - Dernière réponse : mengele
Messages postés
30
Date d'inscription
samedi 16 octobre 2004
Dernière intervention
12 mai 2010
- 15 juil. 2008 à 16:24
bonjour,

je voudrais savoir s'il est possible de forcer la selection dans un TTreeView en fonction du nom du noeud que l'on veut sélectionner et de sa place dans l'arbre?

Par place dans l'arbre j'entends son noeud père donc ça , ça ne devrais pas poser trop de problème une fois que j'aurai réussi à trouver le noeud que je recherche...


<HR>
BLOU BLOU POWAA
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
Messages postés
1529
Date d'inscription
samedi 12 juin 2004
Dernière intervention
5 juillet 2010
3
Merci
var
a: integer;
begin
for a := 0 to TreeView1.Items.Count-1 do
// On parcours les items
if TreeView1.Items.Item[a].Text = 'nom item recherché' then // Si on trouve le texte recherché
begin
TreeView1.Selected := TreeView1.Items.Item[a];
// On sélectionne le noeud
TreeView1.Items.Item[a].Expand(false); // On ouvre le noeud (false veut dire que le noeud s'ouvrira, mais pas ses descendants)
end;
TreeView1.SetFocus;
// Donne le focus au treeview (car si l'on appelle cette procédure depuis l'événement onclic d'un bouton par exemple, on ne voit pas que le noeud est sélectionné car le focus est détenu par le bouton)
end;

Voilà


@+
Bonne Prog'
Nico



<HR>
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !

Merci ni69 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de ni69
Messages postés
1529
Date d'inscription
samedi 12 juin 2004
Dernière intervention
5 juillet 2010
0
Merci
utilise TreeView1.Select(...);

Le texte suivant est tiré de l'aide de Delphi (il faut penser à la consulter des fois ) :

<HR>
Sélectionne les nœuds spécifiés.


procedure Select(const Nodes: arrayofTTreeNode); overload; virtual;

procedure Select(Nodes: TList); overload; virtual;
procedure Select(Node: TTreeNode; ShiftState: TShiftState = []); overload; virtual;


Description :
La méthode Select sélectionne un ou plusieurs nœuds d'arborescence.
Dans les deux premières formes, tous les nœuds du paramètre Nodes sont sélectionnés. Tous les autres nœuds sélectionnés sont désélectionnés.
Dans la troisième forme, Node est sélectionné comme si l'utilisateur avait cliqué. Pour obtenir le même effet qu'avec la touche Ctrl, Maj ou qu'avec le bouton droit de la souris, incluez ssCtrl, ssShift ou ssRight dans le paramètre ShiftState.


<HR>

@+
Bonne Prog'
Nico


<HR>
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
Commenter la réponse de ni69
Messages postés
95
Date d'inscription
mardi 15 mars 2005
Dernière intervention
2 juillet 2007
0
Merci
ouais mais il faut avoir le noeud en question...

si je fais TreeView.Select(nom);
avec nom = 'monNoeud';

ça va pas.... vu que il faut un TreeNode au lieu d'un String


<HR>
BLOU BLOU POWAA
Commenter la réponse de BlouMan
Messages postés
95
Date d'inscription
mardi 15 mars 2005
Dernière intervention
2 juillet 2007
0
Merci
OK merci beaucoup...


<HR>
BLOU BLOU POWAA
Commenter la réponse de BlouMan
Messages postés
171
Date d'inscription
jeudi 15 avril 2004
Dernière intervention
18 juillet 2007
0
Merci
je chercher la meme chose merci tlm
Commenter la réponse de marc660
Messages postés
30
Date d'inscription
samedi 16 octobre 2004
Dernière intervention
12 mai 2010
0
Merci
Génial, merci ni69.
Moi aussi je cherchAIS ça
Commenter la réponse de mengele

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.