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

 Delphi Discussion :

Changer la couleur du texte de sélection d'une ligne dans DBGrid


Sujet :

Delphi

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations forums :
    Inscription : Avril 2011
    Messages : 177
    Points : 111
    Points
    111
    Par défaut Changer la couleur du texte de sélection d'une ligne dans DBGrid
    Bonjour,

    J'ai un Dbgrid avec les lignes en couleur(Blue et vert), lorsque je sélectionne une ligne la couleurs du texte deviendra en blanc ce qui rend le texte illisible,
    comment je peux changer la couleur du texte sélectionné.

    Nom : grid.png
Affichages : 2033
Taille : 23,4 Ko

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 042
    Points : 40 955
    Points
    40 955
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    de la même manière que vous l'avez fait pour changer les couleurs de lignes, dans l'évènement onDrawCoumnCell
    mais en changeant d'autre propriété du canvas Canvas.Font.Color;
    et en testant si la ligne est sélectionnée gdSelected in State

    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 TForm2.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumn; State: TGridDrawState);
    begin
    with TDBGrid(Sender).Canvas do
     begin
       if gdSelected in State then
         begin
           Font.Color:=clRed;
         end
       else Font.Color:=clWindowText;
     end;
     TDBGrid(Sender).DefaultDrawColumnCell(rect,datacol,column,state);
    end;
    Avec les versions récentes de Delphi (XE3+) permettant la gestion des styles cela risquerait d'être plus compliqué
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

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

Discussions similaires

  1. comment changer la couleur d'une ligne dans dbgrid?
    Par dj_techno dans le forum Composants VCL
    Réponses: 5
    Dernier message: 06/10/2008, 08h25
  2. Comment forcer la sélection d'une ligne dans un DataGridView
    Par Pizza Royale dans le forum Windows Forms
    Réponses: 5
    Dernier message: 12/06/2007, 12h32
  3. Sélection d'une ligne dans un DGGrid
    Par zarbouine dans le forum Delphi
    Réponses: 1
    Dernier message: 17/05/2007, 13h51
  4. Sélection d'une ligne dans un JTable
    Par dam21 dans le forum Composants
    Réponses: 3
    Dernier message: 28/07/2004, 12h57
  5. Déplacer la sélection d'une ligne dans un stringgrid
    Par jer64 dans le forum Composants VCL
    Réponses: 5
    Dernier message: 14/03/2003, 00h57

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