Re: [delphi-br] Re: DBGrid - cores - problemas para visualizar (desculpem)
Não. Mas como eu usaria essa função? Pois estou querendo deixar a célula com fonte branca e fundo azul (como no padrão), e quando eu sair desse grid, gostaria que a última célula ativa não ficasse marcada, parecendo que está com foco. - Original Message - From: blcksun954 To: delphi-br@yahoogrupos.com.br Sent: Friday, October 26, 2007 12:18 PM Subject: [delphi-br] Re: DBGrid - cores - problemas para visualizar (desculpem) Já tentou usar a propriedade Focused da DBgrid? --- Em delphi-br@yahoogrupos.com.br, Jefferson - Fórum [EMAIL PROTECTED] escreveu Pessoal, boa tarde! Consigo alterar a fonte e o fundo da célula de um DBGrid, mas não estou conseguindo fazer o seguinte: - Tenho 3 Grid's na mesma tela, cada um tem cores que significam alguma coisa. O problema é que quando mudo a cor da fonte, a célula que está com foco não fica muito visível . Eu gostaria que a célula que está com foco, fique com o fundo azul e a fonte branca. Mas que quando eu sair desse grid e ir ao outro, a última célula volte às cores padrão. Pois nos meus testes, a última célula fica parecendo que ainda está com foco. Alguém pode me ajudar nisso? Espero ter sido claro em minha dúvida e me desculpem voltar nesse assunto novamente. Obrigado, e bom trabalho a todos! Jefferson [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] Re: DBGrid - cores - problemas para visualizar (desculpem)
Estou usando o OnDrawColumnCell sim. Amigão, já resolvi meu problema. Posto abaixo o resultado que achei pra resolver esse problema: if gdFocused in State then begin MeuGrid.Canvas.Font.Color := clWhite; MeuGrid.Canvas.Brush.Color := clHighlight; end else if QMinhaQuery.FieldByName('MeuCampo').IsNull then MeuGrid.Canvas.Font.Color := clRed else MeuGrid.Canvas.Font.Color := clBlue; Com esse código (simples) acima, eu pinto a linha de acordo com minhas condições, a célula ativa fica bem visível (fica na cor padrão) e quando meu grid perde o foco, a última célula que eu estava com foco, volta a ter a cor escolhida e não fica com a impressão de como ela estivesse ainda com o foco. Claro que talvez ainda dê pra melhorar esse código acima, mas como estou correto contra o tempo, depois melhoro isso. De qualquer forma, muito obrigado pela sua ajuda. Bom trabalho a todos! Jefferson - Original Message - From: blcksun954 To: delphi-br@yahoogrupos.com.br Sent: Friday, October 26, 2007 12:48 PM Subject: [delphi-br] Re: DBGrid - cores - problemas para visualizar (desculpem) Você deve estar usando o OnDrawColumnCell para pintar as células como quer, não é? Se estiver, você testaria DBGrid1.Focused no mesmo lugar em que testa se a célula está com foco (ou selecionada). --- Em delphi-br@yahoogrupos.com.br, Jefferson - Fórum [EMAIL PROTECTED] escreveu Não. Mas como eu usaria essa função? Pois estou querendo deixar a célula com fonte branca e fundo azul (como no padrão), e quando eu sair desse grid, gostaria que a última célula ativa não ficasse marcada, parecendo que está com foco. - Original Message - From: blcksun954 To: delphi-br@yahoogrupos.com.br Sent: Friday, October 26, 2007 12:18 PM Subject: [delphi-br] Re: DBGrid - cores - problemas para visualizar (desculpem) Já tentou usar a propriedade Focused da DBgrid? --- Em delphi-br@yahoogrupos.com.br, Jefferson - Fórum t_object@ escreveu Pessoal, boa tarde! Consigo alterar a fonte e o fundo da célula de um DBGrid, mas não estou conseguindo fazer o seguinte: - Tenho 3 Grid's na mesma tela, cada um tem cores que significam alguma coisa. O problema é que quando mudo a cor da fonte, a célula que está com foco não fica muito visível . Eu gostaria que a célula que está com foco, fique com o fundo azul e a fonte branca. Mas que quando eu sair desse grid e ir ao outro, a última célula volte às cores padrão. Pois nos meus testes, a última célula fica parecendo que ainda está com foco. Alguém pode me ajudar nisso? Espero ter sido claro em minha dúvida e me desculpem voltar nesse assunto novamente. Obrigado, e bom trabalho a todos! Jefferson [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] Re: DBGrid - cores - problemas para visualizar (desculpem)
// quando estiver selecionado inverte a cor do fore/background if gdSelected in state then begin oldColor := TDBGrid( Sender ).Canvas.Brush.Color; TDBGrid( sender ).Canvas.Brush.Color := TDBGrid( sender ).Canvas.Font.Color; TDBGrid( sender ).Canvas.Font.Color := oldColor; end; Luiz Escobar - Analista/Desenvolvedor: WEB - HTML/JavaScript/PHP/MySQL WINDOWS - Delphi/ASSEMBLY/MySQL/xBase SERVIDORES - CNA IntraNetWare4.11, LINUX-(RedHat9/Suse10.2), Windows 2K/XP - Original Message - From: Jefferson - Fórum To: delphi-br@yahoogrupos.com.br Sent: Friday, October 26, 2007 2:35 PM Subject: Re: [delphi-br] Re: DBGrid - cores - problemas para visualizar (desculpem) Não. Mas como eu usaria essa função? Pois estou querendo deixar a célula com fonte branca e fundo azul (como no padrão), e quando eu sair desse grid, gostaria que a última célula ativa não ficasse marcada, parecendo que está com foco. - Original Message - From: blcksun954 To: delphi-br@yahoogrupos.com.br Sent: Friday, October 26, 2007 12:18 PM Subject: [delphi-br] Re: DBGrid - cores - problemas para visualizar (desculpem) Já tentou usar a propriedade Focused da DBgrid? --- Em delphi-br@yahoogrupos.com.br, Jefferson - Fórum [EMAIL PROTECTED] escreveu Pessoal, boa tarde! Consigo alterar a fonte e o fundo da célula de um DBGrid, mas não estou conseguindo fazer o seguinte: - Tenho 3 Grid's na mesma tela, cada um tem cores que significam alguma coisa. O problema é que quando mudo a cor da fonte, a célula que está com foco não fica muito visível . Eu gostaria que a célula que está com foco, fique com o fundo azul e a fonte branca. Mas que quando eu sair desse grid e ir ao outro, a última célula volte às cores padrão. Pois nos meus testes, a última célula fica parecendo que ainda está com foco. Alguém pode me ajudar nisso? Espero ter sido claro em minha dúvida e me desculpem voltar nesse assunto novamente. Obrigado, e bom trabalho a todos! Jefferson [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]