Alterar Cor Na Linha Selecionada.
23/12/2005
0
Gostava de saber como poxo alterar a cor da linha selecionado numa dbgrid.
Obrigado, e Bom Natal para voz todos.
Rui Lisboa
Posts
23/12/2005
Marco Salles
Por exemplo:
Código:
No Objecto Inspector da Grid em Abra oPTIONS.. Sete a Propriedade DgRowSelectd Para True e a propriedade DgAlwShowSelected para True
:cry: :cry:
o incoveniente desta sugestão , e que voce não consegue digitar na Grid e alem do mais a cor em destaque e o azul Padrão..
Mas quanto ao fato de não poder digitar , alguns codigos extras resolvem o Porblema
[b:14fbef753f]Este é um ataque mais simples do problema , o outro acredito sera usando o evento onDBGrid1DrawDataCell [/b:14fbef753f]
Exemplo:
Código: implementation var i:Integer=1;
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin If (Table1.RecNo) = i 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;
procedure TForm1.Table1AfterScroll(DataSet: TDataSet); begin i:=Table1.RecNo; end;
[b:14fbef753f]Pode ser que em alguns bancos , isto ainda não funcione , devido a Propriedade RecNo [/b:14fbef753f]
26/12/2005
Rui Lisboa
Begin
dbgrid.Canvas.Brush.Color:=clWhite;
dbgrid.DefaultDrawColumnCell(Rect,DataCol,Column,State);
End
else
Begin
dbgrid.Canvas.Brush.Color:=$0080FFFF;
dbgrid.DefaultDrawColumnCell(Rect,DataCol,Column,State);
End;
Este é o meu codigo para alternar a cor das linhas da dbgrid, agora gostava de saber como alterar a cor da linha selecionada.
26/12/2005
Marco Salles
Acontece que o seu texto esta um pouc confuso , pois [b:8525326757]alternar[/b:8525326757] tem conotação diferente do que [b:8525326757]alterar[/b:8525326757]
Gostava de saber como poxo[size=18:8525326757][b:8525326757] alterar [/b:8525326757][/size:8525326757]a cor da linha selecionado numa dbgrid.
afinal é alternar ou Alterar :?: :?: :?: ... Se for[b:8525326757] Alterar[/b:8525326757] o código que lhe passei posso garantir que funciona.
26/12/2005
Marco Salles
Acontece que o seu texto esta um pouc confuso , pois [b:cbbef7c2dd]alternar[/b:cbbef7c2dd] tem conotação diferente do que [b:cbbef7c2dd]alterar[/b:cbbef7c2dd]
[color=red:cbbef7c2dd]Primeira Citação: de Ru Lisboa[/color:cbbef7c2dd]
[color=red:cbbef7c2dd]Segunda Citação: De Rui Lisboa[/color:cbbef7c2dd]
afinal é alternar ou Alterar :?: :?: :?: :?:
... Se for [b:cbbef7c2dd][size=18:cbbef7c2dd]Alterar[/size:cbbef7c2dd][/b:cbbef7c2dd] o código que lhe passei posso garantir que funciona.
26/12/2005
Rui Lisboa
26/12/2005
Marco Salles
O Tópico a seguir não se refere ao mesmo problema ou não to entendendo nada ????
http://forum.devmedia.com.br/viewtopic.php?t=63314&highlight=dbgrid1+canvas+fillrect+rect&sid=ee7f6455e0d03ed2b497f7e7d1408963
Alguem por favor me socorra :cry: :cry: :cry:
Clique aqui para fazer login e interagir na Comunidade :)