Forcer la selection dans un TTreeView

Résolu
BlouMan Messages postés 93 Date d'inscription mardi 15 mars 2005 Statut Membre Dernière intervention 2 juillet 2007 - 23 mars 2005 à 15:55
mengele Messages postés 29 Date d'inscription samedi 16 octobre 2004 Statut Membre 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

6 réponses

ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
24 mars 2005 à 10:46
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 !
3
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
23 mars 2005 à 17:14
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 !
0
BlouMan Messages postés 93 Date d'inscription mardi 15 mars 2005 Statut Membre Dernière intervention 2 juillet 2007
23 mars 2005 à 17:24
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
0
BlouMan Messages postés 93 Date d'inscription mardi 15 mars 2005 Statut Membre Dernière intervention 2 juillet 2007
24 mars 2005 à 11:55
OK merci beaucoup...


<HR>
BLOU BLOU POWAA
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
marc660 Messages postés 171 Date d'inscription jeudi 15 avril 2004 Statut Membre Dernière intervention 18 juillet 2007
16 sept. 2005 à 11:30
je chercher la meme chose merci tlm
0
mengele Messages postés 29 Date d'inscription samedi 16 octobre 2004 Statut Membre Dernière intervention 12 mai 2010
15 juil. 2008 à 16:24
Génial, merci ni69.
Moi aussi je cherchAIS ça
0
Rejoignez-nous