Bonjour
Je souhaiterais insérer un bouton dans chaque ligne de ma CListCtrl.
Quelqu'un aurait deja fait ce genre de manipulation ? car je ne sais pas trop comment faire de facon "intelligente"
Merci
Bonjour
Je souhaiterais insérer un bouton dans chaque ligne de ma CListCtrl.
Quelqu'un aurait deja fait ce genre de manipulation ? car je ne sais pas trop comment faire de facon "intelligente"
Merci
Personne ne semble avoir d'idées pour moi ou je n'ai peut etre pas ete assez precis !
J'ai commencé à reflechir au probleme et j'ai fait quelques essais.
J'aimerai savoir si la methode est plutot bonne :
J'ai créé un classe CListCtrlPerso qui herite de CListCtrl
Cette classe contient une liste de boutons créés a la volée lors de l'insertion d'un nouvel item
Sur le DrawItem de la liste je l'affiche ou je souhaite dans ma ligne.
Le probleme est qu'a l'affichage, je suis obligé de passer au dessus de mes boutons pour qu'ils aient un aspect normal. Autrement apparait seulement un carré blanc.
Le raffraichissement pose egalement des problemes pendant les scrolls.
Donc je voudrai savoir si j'utilise une methode correcte et comment eviter les problemes d'affichage.
Merci
salut,
il y a plusieurs façon de faire :
* avec des controles CButton créés en tant qu'enfant de ta CListCtrl
Le hic, c'est le volume de bouton à créer ...
si tu n'as que 10 éléments dans ta liste, ça vaut le coup ; si tu en as 100 ou +, tu risques d'avoir un sérieux impact sur les ressources de ta machine ...
* créer des boutons "windowless", c'est à dire que tu gères toi meme l'affichage et le comportement des boutons. c'est bcp plus de boulot
* n'afficher qu'un seul bouton sur la ligne active (sélectionnée) avec un controle CButton
@+
Bonjour et merci pour ta reponse
Ma liste ne comportera jamais des centaines de lignes
au maximum 2 a 3 dizaines.
Je fais en ce moment des essais et cela fonctionne mais j'ai des problemes de rafraichissement ecran
alors penses à rajouter le style WS_CLIPCHILDREN a ta fenetre CListCtrl pour ne pas avoir de soucis à l'affichage
@+
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager