Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    48

    DBGrid & Colori [Delphi]

    ...ho un problema con la dbgrid...
    devo colorare 1 sola riga, non tutte le righe di una colonna ma 1 singola e totale riga.

    Non riesoc a trovare nulla di utile , grazie in anticipo.
    FatMax

    Italian Programmer

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    48
    up
    FatMax

    Italian Programmer

  3. #3
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,463

    OnDataDrawColumnCell

    Devi intercettare l'evento OnDataDrawColumnCell che ti permette di intervenire sulla griglia durante il tracciamento delle singole celle e del loro contenuto.

    Quando intercetti questo evento, devi provvedere a tracciare "manualmente" il contenuto della cella in base al risultato che ti sei prefissato.

    Aggiungo codice di esempio:
    codice:
    procedure TForm1.DBGrid1DataDrawColumnCell(Sender: TObject;
      const Rect: TRect; DataCol: Integer; Column: TColumn;
      State: TGridDrawState);
    begin
      case DataCol of
        0:
        begin
          if Column.Field.AsString = 'T' then
            DBGrid1.Canvas.Brush.Color := clRed
          else
            DBGrid1.Canvas.Brush.Color := clWindow;
          DBGrid1.Canvas.FillRect(Rect);
        end;
      end;
    end;
    Il codice riportato qui sopra interviene nel tracciamento della colonna 0 (zero), cioè della prima colonna della griglia, selezionando un colore per lo sfondo della cella che dipende dal valore contenuto all'interno del campo associato alla colonna stessa; successivamente, provvede a riempire l'area della cella con il colore. E' possibile visualizzare del testo usando il metodo TextRect (o in alternativa TextOut) dell'oggetto Canvas.

    Ci sono degli esempi anche nella Guida in linea di Delphi, raggiungibili dall'argomento corrispondente che contiene istruzioni sull'evento.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.