begin process at 2012 05 28 15:24:53
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Divers

 > 

changement de couleur dans une CListCtrl ?


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

changement de couleur dans une CListCtrl ?

mercredi 18 mai 2005 à 16:28:12 | changement de couleur dans une CListCtrl ?

redam2005

Bonjour,
Voilà j'ai une CListCtrl qui m'affiche des résultats sur chaque ligne et j'aimerai que suivant les cas, la ligne s'affiche en rouge ou en noir... Or la ligne

m_maListCtrl.SetTextColor(RGB(255,0,0));

me change toute la liste et non pas seulement la ligne. Ce qui fait que tout le texte a en fait la couleur correspondant au dernier résultat.. évidemment.
Quelqu'un connait-il une solution ?

Merci

redam
mercredi 18 mai 2005 à 19:36:55 | Re : changement de couleur dans une CListCtrl ?

vecchio56

Administrateur CodeS-SourceS
Une liste en LVS_OWNERDRAWFIXED fera l'affaire, mais ca te fera un peu de travail supplémentaire. A mon avis tu sera obligé de passer par la
jeudi 19 mai 2005 à 14:14:28 | Re : changement de couleur dans une CListCtrl ?

redam2005

Merci pour cette réponse mais malgré mes recherches, je ne parviens pas à utiliser celà. Les exemples que j'ai téléchargé ne compilent même pas. Je suis sous VC++6 avec W2000. Connaissez vous un exemple abordable ?

redam
jeudi 19 mai 2005 à 14:59:47 | Re : changement de couleur dans une CListCtrl ?

vecchio56

Administrateur CodeS-SourceS
http://www.cppfrance.com/code.aspx?ID=24229
Mon code est sans MFC (mais le principe doit être le même), et je crois qu'il est assez compréhensible. De plus il est garanti compilable sous VC++ 6 :)
jeudi 19 mai 2005 à 16:32:38 | Re : changement de couleur dans une CListCtrl ?

redam2005

Désolé, mon niveau ne me permet pas de bien déchiffrer ton code et de tout comprendre... Je ne parviens à compiler sous VC++6. Voici l'erreur :

PBListView.obj : error LNK2001: unresolved external symbol __imp__InitCommonControlsEx@4

garanti ?

redam
jeudi 19 mai 2005 à 16:37:53 | Re : changement de couleur dans une CListCtrl ?

vecchio56

Administrateur CodeS-SourceS
Ajoute la ligne #pragma comment(lib, "comctl32") dans un de tes fichiers.
Ca ne marche pas la car l'ajout de cette lib était spécifié dans le projet mais tu ne pouvais l'utiliser avec VC++ 6.

jeudi 19 mai 2005 à 16:39:40 | Re : changement de couleur dans une CListCtrl ?

redam2005

Merci....

redam
jeudi 19 mai 2005 à 16:45:07 | Re : changement de couleur dans une CListCtrl ?

redam2005

maintenant l'erreur est :

LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main

une idée ?

redam
jeudi 19 mai 2005 à 17:11:04 | Re : changement de couleur dans une CListCtrl ?

redam2005

Pour idée, voici mon code :

BOOL CTableau::OnInitDialog()
{
 CDialog::OnInitDialog();

 /////Construction de la CListCtrl////////////// 
 m_requete.InsertColumn(0, "Software",LVCFMT_LEFT, 252);
 m_requete.InsertColumn(1, "Numéro de requête",LVCFMT_LEFT,110);
 m_requete.InsertColumn(2, "Etat",LVCFMT_LEFT, 100);
 m_requete.InsertColumn(3, "PC",LVCFMT_LEFT, 110);
 m_requete.InsertColumn(4, "Date de saisie SMS",LVCFMT_LEFT, 120);
 m_requete.InsertColumn(5, "Date et heure d'installation",LVCFMT_LEFT, 150);

 construction();

 return TRUE;
}


void CTableau::construction()
{
 m_requete.DeleteAllItems();


 for (int j = 0 ; j < nbrReq ; j++)
 {
  if (j%2)//pour l'instant juste pour le test, je colore une ligne sur 2
  {
   m_requete.SetTextColor(RGB(255,0,0));
  }
  else
  {
   m_requete.SetTextBkColor(RGB(255,255,255));
   m_requete.SetTextColor(RGB(0,0,0));
  }

  int nIndex = m_requete.InsertItem(0,Soft[j]);
  m_requete.SetItemText(nIndex,1,numReq[j]);
  m_requete.SetItemText(nIndex,2,Etat[j]);
  m_requete.SetItemText(nIndex,3,nomPC[j]);
  m_requete.SetItemText(nIndex,4,dateSMS[j]);
  m_requete.SetItemText(nIndex,5,dateFlag[j]);
 } 
}

redam
jeudi 19 mai 2005 à 17:18:35 | Re : changement de couleur dans une CListCtrl ?

vecchio56

Administrateur CodeS-SourceS
Pour l'erreur de link, c'est peut être que tu as créé un projet console au lieu de Win32, l faut que tu changes le point d'entrée (option /SUBSYSTEM du linker)
C'est dans OnDrawItem que tu devra choisir les couleurs (tu dois surcharger cette méthode). Le code correspondant est dans la case WM_DRAWITEM de mon code

1 2

Cette discussion est classée dans : affiche, ligne, couleur, changement, clistctrl


Répondre à ce message

Sujets en rapport avec ce message

CListCtrl : Couleur [ par RunKi ] Je cherche une solution pour changer de couleur pour chaque ligne d'une ListCtrlDans les propriétes on peut définir une couleur de texte mais cette mo Align Text dans CListCtrl [ par crocejf2000 ] Dans une CListCtrl, j'ai une colonne ou il faut que je puisse tronquer le texte a gauche et non pas a droite comme fait par défaut, par exemple, j'aff couleur de fond CListCtrl [ par julok2 ] Bonjour,est-il possible de définir dans une CListCtrl ( j'utilise VC++6.0 et les MFC) une couleur de fond différente pour chaque case?Merci bien listview : comment changer individuellement la couleur d'une ligne? [ par cosmobob ] dans une listview, comment changer la couleur d'une ligne donnée ? lvm_settextcolor change la couleur de toutes les lignes.peut etre un moyen en utili Afficher une petite animation en mode console.... [ par Clonk ] Bonjor,j'avais déjà posté cette question il y a quelques jours, mais elle doit déjà être oubliée dans les tréfonds du site ^_^Alors voilà, j'ai un tra Changement des propriétés d'un controle statique [ par gaillus ] Bonjour,je voudrais modifier les proprietes de controle statique en particulier le contour si c'est possible.Je voudrais grossir le contour et lui cha selection d'une ligne d'une CListCtrl [ par enrageur ] Voila j'utilse une liste de type CListCtrl dans une fenetre de dialog (je programme en C++ sous visual 6 avec des MFC). Quand je selection une ligne d Changement de toutes les couleurs dans une appli en MFC [ par obby ] Salut,  Je voudrai changer toutes les couleurs dans mon application. J'ai déjà réussi à changer la couleur de fond d'une boite de dialogue mais j'aim Retourner à la ligne précédente et changer le couleur dans un cin . [ par Muner ] Salut à tous .Je programme en C++ et j'aimerais savoir comment revenir une ligne auparevent, le code :cout "\b" ;ne permet pas de passer à la ligne p Probleme de \ [ par florian1121 ] Bonjours petite question tte bete mais j'y arrive pas !!Comment faire pour avoir dans un printf  ("\ \n") tout en ayant le premier \ qui s'affiche a l


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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 : 5,507 sec (3)

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