Colorir algumas celulas do dbgrid
Como posso colorir algumas celulas de uma linha do dbgrid?
Até consegui colorir mas somente consigo fazer a linha inteira ficar colorida.
Até consegui colorir mas somente consigo fazer a linha inteira ficar colorida.
Roberto Rossi
Curtidas 0
Respostas
Pestana_
20/11/2008
como assim? em qual condição você deseja colorir a celula do dbGrid?
flw.
flw.
GOSTEI 0
Roberto Rossi
20/11/2008
então vou resumir para você, é um programa de escala de trabalho, então se o conteudo (texto) da célula for ´FO´ a cor de fundo da célula tem que ficar na cor vermelha, se for ´FE´ tem que ficar na cor azul, se for diferente destes dois daí é branco. Tentei seguir umas dicas manipulando o evento ondrawdatacell e ondrawcolumncell mas somente consegui colorir a linha inteira do dbgrid.
GOSTEI 0
Tonidavi2004
20/11/2008
[b:67bf66cca9]Roberto Rossi[/b:67bf66cca9], vc pode seguir este exemplo:
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin if DBGrid1.DataSource.DataSet.SeuCampoFO.AsString = ´FO´ then begin if Column.Index = 0 then // aqui vc põe o índice da sua coluna FO begin DBGrid1.Canvas.Brush.Color := clRed; DBGrid1.Canvas.Font.Color := clWhite; end; end; if DBGrid1.DataSource.DataSet.SeuCampoFE.AsString = ´FE´ then begin if Column.Index = 2 then // aqui vc põe o índice da sua coluna FE begin DBGrid1.Canvas.Brush.Color := clBlue; DBGrid1.Canvas.Font.Color := clWhite; end; end; DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State); end;
GOSTEI 0
Facc
20/11/2008
De uma olhada nesse link
[url]https://www.devmedia.com.br/articles/listcomp.asp?txtsearch=segredos+do+dbgrid&tipo=0&vis=-1&site=36[/url]
tem várias video-aulas explicando o uso do dbgrid.
[url]https://www.devmedia.com.br/articles/listcomp.asp?txtsearch=segredos+do+dbgrid&tipo=0&vis=-1&site=36[/url]
tem várias video-aulas explicando o uso do dbgrid.
GOSTEI 0
Roberto Rossi
20/11/2008
Deu certo... valeu!
GOSTEI 0