Fórum Mudar cor de celula no dbgrid #350602
14/12/2007
0
Olá,
Eu uso o codigo abaixo para mudar a cor da linha do dbgrid e funciona blza. Agora como faço para alterar somente a cor da celula do dbgrid? Obrigado.
if gridAgenda.Fields[6].value = ´SIM´ Then
gridagenda.Canvas.Brush.Color:= claqua;
gridagenda.DefaultDrawDataCell(Rect, gridagenda.columns[datacol].field, State);
Luiz
Eu uso o codigo abaixo para mudar a cor da linha do dbgrid e funciona blza. Agora como faço para alterar somente a cor da celula do dbgrid? Obrigado.
if gridAgenda.Fields[6].value = ´SIM´ Then
gridagenda.Canvas.Brush.Color:= claqua;
gridagenda.DefaultDrawDataCell(Rect, gridagenda.columns[datacol].field, State);
Luiz
L_carlos
Curtir tópico
+ 0
Responder
Post mais votado
14/12/2007
Já consegui descobrir. Para quem precisar segue o codigo:
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const
Rect: TRect;
DataCol: Integer;
Column: TColumn;
State: TGridDrawState);
begin
if (Column.Field.FieldName = ´NOMEDOCAMPO´) then
begin
if condição then // coloque aqui sua condição
begin
DBGrid1.Canvas.Brush.Color:= clAqua;
DBGrid1.Canvas.Font.Color:= clWindowText;
DBGrid1.Canvas.FillRect(Rect);
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
end;
end;
Luiz
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const
Rect: TRect;
DataCol: Integer;
Column: TColumn;
State: TGridDrawState);
begin
if (Column.Field.FieldName = ´NOMEDOCAMPO´) then
begin
if condição then // coloque aqui sua condição
begin
DBGrid1.Canvas.Brush.Color:= clAqua;
DBGrid1.Canvas.Font.Color:= clWindowText;
DBGrid1.Canvas.FillRect(Rect);
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
end;
end;
Luiz
L_carlos
Responder
Gostei + 1
Clique aqui para fazer login e interagir na Comunidade :)