Ctreectrlfx: classe gérant automatiquement un checkbox à trois états dans le tri control

Soyez le premier à donner votre avis sur cette source.

Vue 5 461 fois - Téléchargée 322 fois

Description

Il me fallait utiliser des checkbox dans un CtreeCtrl or cette classe n'a pas été faite pour cela et l'utilisation des checkbox de la classe de base des MFC est buggée et ne gére les checkbox qu'a deux états... Voila pourquoi j'ai developpé cette classe permettant et gérant l'utilisation des Checkbox à trois états. Classe dérivant de CTreeCtrl.

Source / Exemple :


/////////////////////////////////////////////////////////////////////////////
//	        --- HOW TO USE THIS CLASS ---
// This is a class derived of CTreeCtrl which able you to use a 3 state 
// checkbox in your CTreeCtrl.
// You must create a bitmap 56(wide)*11pixels(height) which must contains
// four small icons (11*11) separated each other of 3 pixels
// Example: Icon1-3pixels-Icon2-3pixels-Icon3-3pixels-Icon4-3pixels
// The ID of the bitmap must be IDB_BITMAP_TREE and can have 256 colors
// The first Icon must represent NOSTATE state. The second Icon, UNCHECKED state.
// The third Icon, CHECKED state and the last, CHILD_CHECKED.
// You must use the SetCheckItemFX and GetCheckItemFX's methods for using
// correctly this class.
// The others methods work but they are specials utilities.
// After doing an instance of this class you MUST launch 
// the InitTreeCtrlFX's method!!!
/////////////////////////////////////////////////////////////////////////////

Conclusion :


Des bugs sont probables mais des mises à jour viendront pour les corriger!!!
Bon dev,
<<-- H@ldwin -->>

Codes Sources

A voir également

Ajouter un commentaire

Commentaire

cs_farscape
Messages postés
2
Date d'inscription
samedi 1 janvier 2005
Statut
Membre
Dernière intervention
1 janvier 2005
-
Salut,
C’est bizarre ça ne fonctionne pas,
Comme toutes les variantes que j'ai pu tester d'ailleurs.
Lorsque l'on clique sur une branche de niveau inférieure, il apparaît un blanc pour les niveaux supérieurs.
De même que la customisation apportée par la ImageList :
Par exemple mettre la coche en rouge si on check ne fonctionne pas non plus.
En fait la CImageList est ignorée.

Note: j'ai bien vérifié la création de la CImageList.
J’utilise aussi une CImageList pour afficher une image (les icônes répertoires et fichiers) sur chaque item.
Tu as une explication ?
Sous quel environnement tu as testé ton code ?
Mon Environnement VC6. SP6 sous XP-PRO.
Amicalement

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.