IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

Item en couleur dans un ListView


Sujet :

C++Builder

  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    162
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 162
    Par d�faut Item en couleur dans un ListView
    Bonjours � tous !
    je me demandais si �tait possible de mettre un seul item en couleur dans un ListView.
    Voil� mon bout de code :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
        for(int i= 1;i<CompteurItem;i++)
        {
        TListItem *Item =MaListe->ListView1->Items->Add();
        Item->Caption=ListeItem->Strings[i];
             if(strcmp(ListeItem->Strings[i].c_str(),"tomate")==0)
            {
                     AnsiString Index ="Item trouvé - ligne : ";
                     Index =Index +i;
                     MaListe->StatusBar1->Panels->Items[1]->Text =Index;
     
                     //Mettre l'item trouvé en rouge
     
            }

  2. #2
    Membre Expert
    Avatar de sat83
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activit� : D�veloppeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Par d�faut
    Voici un petit bout de code permettant de colorer une ligne sur deux dans un TListView. Il suffit de compl�ter l'�v�nement OnCustomDrawItem (en laissant OwnerDraw � false)
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    void __fastcall TForm1::ListView1CustomDrawItem(TCustomListView *Sender,
          TListItem *Item, TCustomDrawState State, bool &DefaultDraw)
    {
        if( (Item->Index%2)) //on colorie les élément pairs
          ((TListView*)Sender)->Canvas->Brush->Color = clYellow ;
        else
          ((TListView*)Sender)->Canvas->Brush->Color = clWhite ;
    }
    La m�me chose pour colorer une cellule:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    void __fastcall TForm1::ListView1CustomDrawItem(TCustomListView *Sender,
          TListItem *Item, TCustomDrawState State, bool &DefaultDraw)
    {    
        if( (Item->Caption  == "tomate" )) 
          ((TListView*)Sender)->Canvas->Brush->Color = clRed ;
        else
          ((TListView*)Sender)->Canvas->Brush->Color = clWhite ;
    }

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    162
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 162
    Par d�faut
    merci, simple et efficace !

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Mettre des items en couleur dans un combo box
    Par wrm8787 dans le forum Macros et VBA Excel
    R�ponses: 2
    Dernier message: 04/03/2009, 06h53
  2. Un item multi ligne dans un listView
    Par DarkLeon dans le forum Windows Forms
    R�ponses: 10
    Dernier message: 02/03/2009, 18h17
  3. Items en couleur dans une listBox
    Par xx_FiFty_xx dans le forum Windows Forms
    R�ponses: 3
    Dernier message: 04/06/2008, 13h25
  4. Certaines lignes en couleur dans un ListView en VB6
    Par kaspar dans le forum VB 6 et ant�rieur
    R�ponses: 12
    Dernier message: 18/01/2006, 15h00
  5. [C#] Probleme de couleur dans une ListView
    Par Oberown dans le forum Windows Forms
    R�ponses: 1
    Dernier message: 05/12/2005, 17h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo