danielrgoes Postado Julho 12, 2010 Denunciar Share Postado Julho 12, 2010 Boa Tarde eu estou zebrando o meu DBGrid dessa formaif Odd (modulo.cds_auxprojeto.RecNo) and ( modulo.cds_auxprojeto.State <> dsInsert) then begin DBGrid4.Canvas.Brush.Color:= clSkyBlue; DBGrid4.Canvas.FillRect(Rect); DBGrid4.DefaultDrawDataCell(Rect,Column.Field,State); end;Porem a linha em branco quando selecionada fica azul escura mais quando eu seleciono uma SkyBlue não fica azul escuroparecendo que esta selecionadacomo soluciono este problema Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Julho 12, 2010 Denunciar Share Postado Julho 12, 2010 Voce vai achar a resposta em algum desses postshttp://scriptbrasil.com.br/forum/index.php...ighlite=zebradoabraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 danielrgoes Postado Julho 12, 2010 Autor Denunciar Share Postado Julho 12, 2010 Voce vai achar a resposta em algum desses postshttp://scriptbrasil.com.br/forum/index.php...ighlite=zebradoabraçoJhonas as dicas são muito boa achei ate algo parecido com os eu quero porem não exatamente pois quando seleciono a linha branca ele inteira fica azuljá na linha SkyBlue apenas o item selecionado fica azul e não a linha interira Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Julho 12, 2010 Denunciar Share Postado Julho 12, 2010 exprimente assim:exemplo:procedure TFCadProd.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin If odd(TCadProd1.RecNo) then begin DBGrid1.Canvas.Font.Color:= clBlack; DBGrid1.Canvas.Brush.Color:= cl3DLight; end else begin DBGrid1.Canvas.Font.Color:= clBlack; DBGrid1.Canvas.Brush.Color:= clWhite; end; if (gdSelected in state) then DBGrid1.Canvas.Font.Color:= clred else DBGrid1.Canvas.Font.Color:= clBlack; DBGrid1.Canvas.FillRect(Rect); DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State); end;abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 danielrgoes Postado Julho 13, 2010 Autor Denunciar Share Postado Julho 13, 2010 exprimente assim:exemplo:procedure TFCadProd.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin If odd(TCadProd1.RecNo) then begin DBGrid1.Canvas.Font.Color:= clBlack; DBGrid1.Canvas.Brush.Color:= cl3DLight; end else begin DBGrid1.Canvas.Font.Color:= clBlack; DBGrid1.Canvas.Brush.Color:= clWhite; end; if (gdSelected in state) then DBGrid1.Canvas.Font.Color:= clred else DBGrid1.Canvas.Font.Color:= clBlack; DBGrid1.Canvas.FillRect(Rect); DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State); end;abraçoJhonas ficou bom mais ainda não é exatamente o que eu queropois apenas a celula selecinada fica vermelhafostaria que a linha toda do DBbrid ficase vermelha Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Julho 13, 2010 Denunciar Share Postado Julho 13, 2010 No DBgrid va em Options e deixe a propriedade dgRowSelect = true ... a linha toda ficara em vermelhoabraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
danielrgoes
Boa Tarde
eu estou zebrando o meu DBGrid dessa forma
if Odd (modulo.cds_auxprojeto.RecNo) and ( modulo.cds_auxprojeto.State <> dsInsert) then
begin
DBGrid4.Canvas.Brush.Color:= clSkyBlue;
DBGrid4.Canvas.FillRect(Rect);
DBGrid4.DefaultDrawDataCell(Rect,Column.Field,State);
end;
Porem a linha em branco quando selecionada fica azul escura mais quando eu seleciono uma SkyBlue não fica azul escuro
parecendo que esta selecionada
como soluciono este problema
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.