begin process at 2010 03 15 20:36:27
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

selection d'un item d'un CTreeCtrl pour la seconde fois.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

selection d'un item d'un CTreeCtrl pour la seconde fois.

mercredi 13 avril 2005 à 12:32:22 | selection d'un item d'un CTreeCtrl pour la seconde fois.

hdaniel

Bonjour,

j'utilise un arbre, lorsque l'évènement TVN_SELCHANGED arrive je traite la sélection
tout fonctionne.(je peux lire quel est l'item sélectionné etc...)
mais si je reclique sur le même item rien ne se passe.(normal mais très embêtant)

que faire dans ce cas?
comment savoir que l'on a recliquer sur l'item sélectionné?

hdaniel
mercredi 13 avril 2005 à 20:30:04 | Re : selection d'un item d'un CTreeCtrl pour la seconde fois.

vecchio56

Administrateur CodeS-SourceS
Avec NM_CLICK tu peux savoir quand on clique avec le bouton droit, a ce moment tu récupère la sélection. Mais garde TVN_SELCHANGED car le sélection peut être modifiée aussi avec le clavier.
jeudi 14 avril 2005 à 09:31:46 | Re : selection d'un item d'un CTreeCtrl pour la seconde fois.

hdaniel

Le problème est alors de savoir si l'on a recliqué sur l'item déja sélectionné.
J' ai essayé avec 

 GetCursorPos(&pt);
 HTREEITEM tItemClicked = m_treeCtrl.HitTest(pt,&nFlag);

mais ça ne marche pas (tItemClicked est NULL). je suppose qu'il faut avoir la position par rapport à l'arbre et non a la fenêtre du programme.


hdaniel
jeudi 14 avril 2005 à 11:34:33 | Re : selection d'un item d'un CTreeCtrl pour la seconde fois.

vecchio56

Administrateur CodeS-SourceS
Réponse acceptée !
GetCursorPos(&pt); // coordonnées par rapport au bord de l'écran
ScreenToClient(m_treeCtrl.GetSafeHwnd(), &pt); // donne les coordonnée dans la fenêtre

Tu peux aussi retenir dans une variable le dernier item séléctionné, et tu regardes si c'est différent
jeudi 14 avril 2005 à 12:15:27 | Re : selection d'un item d'un CTreeCtrl pour la seconde fois.

hdaniel

l'on peut pas regarder si l'item est différent simplement parceque lorsque l'on clique l'item, il n'est pas encore sélectionné.

 GetCursorPos(&pt);  // coordonnée du click dans screen
 m_treeCtrl.ScreenToClient(&pt); // donne les coordonnée dans la fenêtre tree
 HTREEITEM tItemClicked = m_treeCtrl.HitTest(pt,&nFlag); // je retrouve mon item

nickel j'te remercie vecchio56                       

hdaniel


Cette discussion est classée dans : item, seconde, sélectionné, selection, ctreectrl


Répondre à ce message

Sujets en rapport avec ce message

selection dans une listeview [ par deck_bsd ] Yop,Voila je voulai faire en sorte que lorsque un item avait été trouvé lord d'une recherche, celui ci soit selectionner. Attention la fenêtre de rech SelectItem et CTreeCtrl [ par Toutoun13 ] Bonjour, J'essaye de selectionner un item d'un CTreeCtrl mais ca ne fonctionne pas. J'utilise la ligne suivante: m_pTree.SelectItem(pSelectedItem); CtreeCtrl (Click droit sur 1 item) [ par yann_lo_san ] Salut, pourriez-vous m'éclairer sur la gestion du click droit sur un item d'un CtreeCtrl en Win32 ou MFC, pour pouvoir ouvrir un menu popup selon l'it ListBox couleurs [ par juki_webmaster ] Bonjour, Aprés avoir fait pas mal de recherche sur cppfrance et sur google avec les termes dont j'ai put soutirer: listbox/couleur , j'ai rien put tr Ouvrir une fenetre par double clic sur un CTreeCtrl [ par milhandril ] A partir d'une fenetre CTreeCtrl je souhaiterais ouvrir une autre fenetre. J'ai deja créé les differentes fenetres que je souhaite pouvoir ouvrir en d [c][WinApi] Combobox : détecter le changement d'item [ par acryline ] Bonjour Pour une combobox, les messages CBN_EDITCHANGE ou CBN_EDITUPDATE sont bien envoyés quand le texte du contrôle d'édition est modifié au clavier icône item treeview [ par raoulman ] Bonjour, Je m'essaye aux treeview en API mais là je dois dire que je patoge pas mal. Avec tout ce que j'ai pu trouver sur le forum j'ai aujourd'hui c selection dans une chaine [ par sbbichette ] Bonjour, je débute en C++ et je voudrais recuperer dans une chaine de navigation trois parties.Exemple:C:\Program Files\QuickTime\Plugins\sur 2 variab [OpenGL] "Normal" d'un Pixel [ par cuq ] Bonjour,J'utilise les fonctions glReadPixels &  gluUnProject pour avoir les coordonnées d'un point sélectionné dans un rendu Opengl. Je me demandai s' Selection d'un lecteur avec SHBrowseForFolder [ par ebooserge ] salut a tous,je fais un petit prog en c++ qui a besoin d'acceder au lecteur de cd.j'utilise pour le moment la fonction SHBrowseForFolder qui permet de


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,811 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales