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

Composants VCL Delphi Discussion :

[D7] Couleur des cellules d'un StringGrid


Sujet :

Composants VCL Delphi

  1. #1
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 100
    Points : 53
    Points
    53
    Par défaut [D7] Couleur des cellules d'un StringGrid
    Lusa,

    Est il possible d'attribuer différentes couleurs à plusieurs cellules d'un TStringGrid suivant leur contenu.

    Exemple : si le contenu est 'h21' alors attribuer la couleur bleu à la cellule
    Si le contenu est 'p32' affecter la couleur jaune, etc...

    Et est il possible de la mettre dans un évènement tel modify pour que la TStringGrid affecte d'elle même les couleurs quand il y a une modif du text???

    Merci

    Anthony

  2. #2
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 100
    Points : 53
    Points
    53
    Par défaut
    Désolé j'ai oublié de mettre le titre ...!!!

  3. #3
    bjl
    bjl est déconnecté
    Membre averti Avatar de bjl
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    263
    Détails du profil
    Informations personnelles :
    Localisation : Brésil

    Informations forums :
    Inscription : Décembre 2002
    Messages : 263
    Points : 338
    Points
    338
    Par défaut
    Bonjour, quand tu parles de changement de contenu, il s'agit de la saisie du texte ?


    sinon, si c'est à la sortie de la cellule ou si le texte est change par une copie de texte, en utilisant l'évènement OnDrawCell, on peut faire quelque chose comme çà :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Procedure Tform1.Stringgrid1DrawCell( Sender : TObject; ACol, ARow : Integer; Rect : Trect; State : TgridDrawState);
    var 
      Atext : String;
      Acolor : Tcolor;
    Begin
      AText := StringGrid1.Cells[Acol, Arow];
      If AText = 'h21' then Acolor := ClYellow
      else if AText = 'p32' then AColor := ClYellow
      else Acolor := StringGrid1.Color;
     
      StringGrid1.Canvas.Brush.Color := AColor; // recopie la couleur voulue dans le canevas de la stringgrid
      StringGrid1.Canvas.FillRect(Rect); // colore la cellule voulue
      StringGrid1.Canvas.TextOut(Rect.left + 2, Rect.top + 2, Atext); // écrit le texte dans la cellule
    End;

  4. #4
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 100
    Points : 53
    Points
    53
    Par défaut
    Dernière petite question

    pour conserver les cellules fixed avec la couleurs par défaut (ex: ClBtnFace), comment je peux faire sachant que j'ai 2 lignes et 1 colonnes fixed.

    C'est là qu'intervient la propriété state je suppose, je me trompes ou pas

    et encore merci

  5. #5
    bjl
    bjl est déconnecté
    Membre averti Avatar de bjl
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    263
    Détails du profil
    Informations personnelles :
    Localisation : Brésil

    Informations forums :
    Inscription : Décembre 2002
    Messages : 263
    Points : 338
    Points
    338
    Par défaut
    pour les cellules fixed, state renvoie gdfixed.


    sélectionne "TGridDrawState" avec le curseur dans la déclaration de la procédure et fait F1 : tu sauras tout ce qu'il faut savoir sur state.

  6. #6
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 100
    Points : 53
    Points
    53
    Par défaut
    c ok ca marche

    merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Couleur des cellules dans une StringGrid
    Par dekalima dans le forum C++Builder
    Réponses: 4
    Dernier message: 03/09/2010, 14h58
  2. [JTable] Couleur des cellules
    Par eighty_three dans le forum Composants
    Réponses: 2
    Dernier message: 20/05/2008, 17h55
  3. Filtre automatique selon couleurs des cellules
    Par stryker973 dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 21/03/2008, 12h29
  4. Tableau et couleur des cellules
    Par DaisyVIP dans le forum ASP.NET
    Réponses: 7
    Dernier message: 08/02/2008, 12h30
  5. couleur des cellules de JTable
    Par adil1251985 dans le forum Composants
    Réponses: 5
    Dernier message: 05/06/2007, 12h31

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