Couleur dans un listView

pepsidrinker Messages postés 151 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 15 avril 2009 - 24 févr. 2009 à 17:24
uaip Messages postés 1466 Date d'inscription mardi 20 février 2007 Statut Membre Dernière intervention 7 février 2011 - 24 févr. 2009 à 17:54
Bonjour tout le monde!
Je recherche un lien ou un tutorial , peux importe, kkchose pour pouvoir alterner les couleur de background d'un item dans un listView.
Ex: Item1 = bleu
Item2 = bleu pale
Item3 = bleu
etc...
Jai beau chercher, je trouve juste en .NET!
Je code en c++ sur XP, pas de .NET du tout...
QQun aurait une idde?


Merci bcp,



Pepsidrinker

2 réponses

cs_juju12 Messages postés 966 Date d'inscription samedi 3 avril 2004 Statut Membre Dernière intervention 4 mars 2010 4
24 févr. 2009 à 17:52
Tu peux peut-être procéder la notification NM_CUSTOMDRAW (via WM_NOTIFY dans la fenêtre principale), il y a un champ pour la couleur de fond de l'item. Par contre, je ne sais pas si le système envoie un message par item ou un seul pour tous, auquel cas ça ne marchera pas.
0
uaip Messages postés 1466 Date d'inscription mardi 20 février 2007 Statut Membre Dernière intervention 7 février 2011
24 févr. 2009 à 17:54
Salut,
Au cas où tu n'aurais pas vu, il y a une editbox de recherche ici, il suffit de taper "listview couleur" en ayant pris soin de sélectionner l'onglet "Codes" et... bref, en 2 secondes de recherche, tu tombes sur des exemples comme celui-ci.

Il existe sinon une méthode beaucoup plus simple (mais qui alourdira grandement l'exécutable final), si tu désires insérer des couleurs statiques, de préférences sur une listview non resizible. Il s'agit de dessiner le background (sur paint par exemple) au format bmp et d'ajouter l'image en background comme ceci :
LVBKIMAGE plvbki={0};
plvbki.ulFlags=LVBKIF_SOURCE_HBITMAP|LVBKIF_STYLE_TILE;
plvbki.hbm=LoadBitmap(hinstance,"background");
SendMessage(hwnd_ListView,LVM_SETBKIMAGE,0,(LPARAM)(LPLVBKIMAGE)&plvbki);

Mais bon... perso, je te conseille vivement le 1er lien.

Cordialement, uaip.
0
Rejoignez-nous