mudar cor da linha selecionada no DBGrid
olá amigos,
quando uma linha é selecionada no DBGrid, o D7 troca a cor da fonte )pois é a linha selecionada). Porém o efeito da cor trocada dificulta leitura das informações na célula.
Existe alguma dica para contornar este problema?
Obrigado. :?:
quando uma linha é selecionada no DBGrid, o D7 troca a cor da fonte )pois é a linha selecionada). Porém o efeito da cor trocada dificulta leitura das informações na célula.
Existe alguma dica para contornar este problema?
Obrigado. :?:
Leo_rocha_rj
Curtidas 0
Respostas
Marco Salles
31/08/2006
não seria :
No objeto inspector do dbgrid em Options colocar dgAlwaysShowEditor em True
GOSTEI 0
Night_man
31/08/2006
se tu nao mudar a cod da linha selecionada como tu vai saber qual linha esta selecionada.
o dbgrid troca as cores para:
CorDoFundo: clHighlight
CorDoTexto: clHighlightText
voce pode utilizar o evento DrawColumnCell para fazer o seu proprio metodo de pintar o grid, colocando o texto nas cores e formatos desejados
o dbgrid troca as cores para:
CorDoFundo: clHighlight
CorDoTexto: clHighlightText
voce pode utilizar o evento DrawColumnCell para fazer o seu proprio metodo de pintar o grid, colocando o texto nas cores e formatos desejados
GOSTEI 0
Paullsoftware
31/08/2006
tente assim: no evento OnDrawColumnCell do DbGrid
espero ter ajudado :wink:
//aqui verifico se o campo data da minha tabela é melhor do que a data selecionada pelo usuário.. if ( DM_BANCO.LOCACAO.FieldByName(´DATARETORNO´).Value < SelData.Date ) then begin //aqui verifico se a linha está selecionada, se estiver selecionada mudo para branco, caso contrário deixo em vermelho... if gdSelected in State then DBGrid1.Canvas.Font.Color := clWhite else DBGrid1.Canvas.Font.Color := clRed; DBGrid1.Canvas.Font.Style := [fsBold]; DBGrid1.Canvas.FillRect(Rect); DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State); end
espero ter ajudado :wink:
GOSTEI 0