Dbgrid
galera para o efeito zebrado eu uso assim:
só que como faço para deixar a linha selecionada em azul que seja?
thanks
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin If odd(Table1.RecNo) then begin DBGrid1.Canvas.Font.Color:= clWhite; DBGrid1.Canvas.Brush.Color:= clGreen; end else begin DBGrid1.Canvas.Font.Color:= clBlack; DBGrid1.Canvas.Brush.Color:= clWhite; end; DBGrid1.Canvas.FillRect(Rect); DBGrid1.Canvas.TextOut(Rect.Left+2,Rect.Top,Column.Field.AsString); end;
só que como faço para deixar a linha selecionada em azul que seja?
thanks
Marcos Fernando
Curtidas 0
Respostas
Bico
27/02/2006
Boa tarde.
Não sei se entendi bem o que você queria fazer. Se for o que estou pensando a solução é essa:
Atenciosamente,
Fernando;
Não sei se entendi bem o que você queria fazer. Se for o que estou pensando a solução é essa:
procedure TForm1.CDSGridDrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin if not(gdSelected in State) then begin if ((DataSource1.DataSet.RecNo mod 2) = 0) then begin with (Sender as TDBGrid) do begin Canvas.Brush.Color := clRed; Canvas.Font.Color := clBlack; DefaultDrawColumnCell(Rect, DataCol, Column, State); end; end; end; end;
Atenciosamente,
Fernando;
GOSTEI 0
Marcos Fernando
27/02/2006
Ótimo meu amigo,
deu certo na verdade só queria saber essa linha
if (gdSelected in State) then
thanks
deu certo na verdade só queria saber essa linha
if (gdSelected in State) then
thanks
GOSTEI 0