Alterar cor do selecionado da célula

Delphi

16/02/2005

como faço para que ao selecionar uma célula, o destaque de seleção seja a cor que eu especificar?
Aqui no meu pc a célula selecionada fica sempre em azul, quero mudar pra outra cor.


Raserafim

Raserafim

Curtidas 0

Respostas

Wbb

Wbb

16/02/2005

Em primeiro lugar, você está se referindo a célula de que componente?

wbb


GOSTEI 0
Raserafim

Raserafim

16/02/2005

foi mal,
do DBGrid


GOSTEI 0
Massuda

Massuda

16/02/2005

Não testei isso... no evento OnDrawColumnCell do seu dbgrid, faça algo assim:
procedure TSeuForm.SeuGridDrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer;
  Column: TColumn; State: TGridDrawState);
var
  Grid: TDBGrid;
begin
  Grid := Sender as TDBGrid;
  if gdSelected in State then begin
    Grid.Canvas.Brush.Color := ...a cor desejada...;
  end;
  Grid.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;



GOSTEI 0
Wbb

Wbb

16/02/2005

Também não testei o código do Massuda, mas o que eu uso é praticamente igual ao dele e funciona.

procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
  with (Sender as TDBGrid) do begin
    if gdSelected in State then begin
      Canvas.Brush.Color := clRed;
      Canvas.Font.Color := clWhite;
    end;

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

T+
wbb


GOSTEI 0
POSTAR