Fórum Colorir toda uma linha ativa num dbgrid #339303

24/03/2007

0

Calera como faço para colorir toda uma linha ativa num componente
dbgrid.


Cabal

Cabal

Responder

Posts

24/03/2007

Paullsoftware

Seria algo como isso??
procedure TfRetorno.DBGrid1DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn;
  State: TGridDrawState);
begin
    if ( DM_BANCO.LOCACAO.FieldByName(´DATARETORNO´).Value < SelData.Date ) then
     begin
     DBGrid1.Canvas.Font.Color := clRed;
     DBGrid1.Canvas.Font.Style := [];
     DBGrid1.Canvas.FillRect(Rect);
     DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
     end;
    if ( gdSelected in State ) then
     begin
      if ( DM_BANCO.LOCACAO.FieldByName(´DATARETORNO´).Value < SelData.Date ) then
       begin
         DBGrid1.Canvas.Font.Color := clYellow;
         DBGrid1.Canvas.Font.Style := [fsBold];
         DBGrid1.Canvas.FillRect(Rect);
         DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
       end
      else
       begin
         DBGrid1.Canvas.Font.Color := clWhite;
         DBGrid1.Canvas.Font.Style := [fsBold];
         DBGrid1.Canvas.FillRect(Rect);
         DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
       end
     end;
end;

espero ter ajudado :wink:


Responder

Gostei + 0

25/03/2007

Cabal

Pô valeu pela ajuda, mas o que eu quero é colorir a linha corrente da grid.
aquele caracter especial (triângulo) que fica a esquerda na grid, eu queria acompanhar as movimentações dele, com a cor na linha corrente toda preeenchida. igual ao efeito alwaysShowSelection do proprio grid, só que quando uso isso, a coluna sempre q me movimento(aplicando filtros ou seleções) pela grid, o cursor retorna a célula (0,0).


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar