Checkboxes dans treeview

cs_clothilde Messages postés 15 Date d'inscription dimanche 20 mars 2005 Statut Membre Dernière intervention 4 avril 2005 - 20 mars 2005 à 20:34
abdoulax Messages postés 875 Date d'inscription samedi 17 mai 2003 Statut Membre Dernière intervention 22 juin 2012 - 1 juin 2005 à 17:13
Bonjour,

j'ai parcouru le site de long en large, j'ai fouillé dans toutes les sources (ou presque ;-) ), j'ai parcouru les forums, mais je n'ai pas trouvé la solution à mon problème.

SANS MFC, j'ai créé un Treeview avec des CheckBoxes embarquées, comment puis-je savoir quelles sont les boxes checkées dans l'ensemble de mon Treeview ?

En fait mon treeview affiche le contenu des disques, je peux sélectionner un disque et afficher l'ensemble de ses répertoires et fichiers.
J'aimerai pouvoir sélectionner, à l'aide des checkboxes, certains répertoires et certains fichiers dans le but de les copier dans un répertoire cible.

Je bloque complètement :-(

Quelqu'un aurait-il la solution ?

Merci,
Clo

4 réponses

cs_clothilde Messages postés 15 Date d'inscription dimanche 20 mars 2005 Statut Membre Dernière intervention 4 avril 2005
20 mars 2005 à 20:35
PS : je travaille avec Visual C++

Clo
0
cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 3
21 mars 2005 à 18:06
Salut,
Dans la page msdn du style TVS_CHECKBOXES, il est écrit:
"State image 1 is the unchecked box and state image 2 is the checked box. Setting the state image to zero removes the check box altogether. "
Donc je pense qu'en changeant le valeur du membre iSelectedImage de la structure TVITEM tu peux controler le status du checkbox.
0
cs_clothilde Messages postés 15 Date d'inscription dimanche 20 mars 2005 Statut Membre Dernière intervention 4 avril 2005
22 mars 2005 à 07:20
Bonjour,

certes, j'avais bien vu cela. Mais ça fait à pile une semaine que je me suis mise à visual c++ et j'avoue que pour l'instant le déchiffrage des pages msdn n'est pas des plus aisé.

Je commence à comprendre le principe de fonctionnement desdites pages et la mise en application de leur contenu, mais il faut reconnaître qu'elles ne sont vraiment pas destinées à des débutants.

Toujours est-il que, pour mon projet, j'ai modifié quelque peu le principe de sélection pour ne pas avoir à utiliser ces checkboxes embarquées dans le treeview. Je reviendrai dessus plus tard.

Merci tout de même pour ton aide.

Clo
0
abdoulax Messages postés 875 Date d'inscription samedi 17 mai 2003 Statut Membre Dernière intervention 22 juin 2012 1
1 juin 2005 à 17:13
J'ai posé cette question y'a 3jours, on m'a enfin répondu ce matin :

http://www.cppfrance.com/forum.v2.aspx?ID=470378

HTREEITEM hParent = TreeView_GetSelection(GetDlgItem(Dlg, IDC_TREE1));
TVITEM tvItem;
// Prepare to receive the desired information.
tvItem.mask = TVIF_HANDLE | TVIF_STATE;
tvItem.hItem = hParent;
tvItem.stateMask = TVIS_STATEIMAGEMASK;


// Request the information.
TreeView_GetItem(GetDlgItem(Dlg,IDC_TREE1), &tvItem);


// Return zero if it's not checked, or nonzero otherwise.
//(BOOL)(tvItem.state >> 12);


char test[256];
sprintf(test,"%i",(BOOL)(tvItem.state >> 12));
MessageBox(0,test,"Erreur",MB_ICONERROR);

voilou voilou

Have Fun ...
0
Rejoignez-nous