Array
(
)

DBGrid,por em Negrito o Registro Selecionado como faço isso?

Hviana
   - 11 abr 2006

como faço p/ por o registro selecionado em negriito no DBGrid, please?

:roll: :?:


Aureliovs
   - 11 abr 2006

Isso deve resolver...

#Código

procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
if gdSelected in State then
begin
DBGrid1.Canvas.Font.Style := [fsBold];
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
end;


Um abraço
t+


Hviana
   - 11 abr 2006


Citação:
Isso deve resolver...

#Código

procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
if gdSelected in State then
begin
DBGrid1.Canvas.Font.Style := [fsBold];
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
end;


Um abraço
t+

VALEU KRA RESOLVEU!!!! BRIGADU


Eniorm
   - 29 abr 2012

só pra complementar essa dica, eu precisei de algo parecido.

Meu caso eu tenho uma tabela de localizações, e na tabela de clientes eu tenho um campo que guarda o codigo da localização (fk), e no form do cadastro de clientes, eu seleciono a localização no dbgrid.

Baseado na explicação desse tópico, adaptei o código para que, a linha do grid cujo código seja igual ao gravado na tabela do cliente, fique em negrido.
Assim eu tenho destacado qual é a localização escolhida para o cliente.


if (SCDS_Localizacao.FieldByName(codigo).AsInteger = CDS_Cliente.FieldByName(cod_localizacao).AsInteger) then
DBGrid2.Canvas.Font.Style := Font.Style + [fsBold];
DBGrid2.DefaultDrawColumnCell(Rect, DataCol, Column, State) ;