Fórum Problema ao sobreescrever dbgrid #391050

23/11/2010

0

Eu uso em alguns dbgrids do meu sistema umas funções no DrawCloumnCell, para por exemplo mudar cor de fauras em atraso, quando eu cli sobre ele e como se o texto original aparecesse subescrito na linha selecionada, como eu evito isso?

vlw!!
Marcos Faneli

Marcos Faneli

Responder

Posts

23/11/2010

Pietro Braga


  Hahaah, passei por isso já, se não tiver resolvido até a noite quando chegar em casa eu pego o meu fonte e posto aí pra ti.
Abs
Responder

Gostei + 0

23/11/2010

Wilson Junior

Utilize o código abaixo:
procedure EventoOnDrawColumnCell;
begin
  DBGrid.Canvas.FillRect( Rect );

  DBGrid.Canvas.Font.Color  := clBlack;
  DBGrid.Canvas.Brush.Color := clWhite;

  DBGrid.DefaultDrawColumnCell( Rect, DataCol, Column, State );
end;


Espero ter colaborado.
Responder

Gostei + 0

23/11/2010

Pietro Braga

procedure TF_Stock.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;  DataCol: Integer; Column: TColumn; State: TGridDrawState);with F_Dados.Q_Grid do  Begin    if (FieldByName('QTDE').Value <= FieldByName('QTDE_MIN').Value) then    DbGrid1.Canvas.Font.Color:= clRed;    DBGrid1.Canvas.FillRect(Rect);    DBGrid1.Canvas.TextOut(Rect.Left+3,Rect.Top+2,Column.Field.AsString);  End;  end;
Adapte isso a sua necessidade, a parte em vermelho é o código que colore o texto na DBGrid caso a minha condição seja verdadeira. Se ainda assim o texto paracer deslocado, ajuste os valores para left e top.
Abs
 
Responder

Gostei + 0

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

Aceitar