Mudar cor de componentes que não tem a propriedade Color

Delphi

25/03/2005

como posso conseguir mudar a cor de alguns componentes que não tem a propriedade Color. Um exemplo é o TButton.


Raserafim

Raserafim

Curtidas 0

Respostas

Zap40

Zap40

25/03/2005

no delphi 7 p/baixo num tem jeito ,,, esquece,,só tem no delphi 2005 .net :( :o :)


GOSTEI 0
Raserafim

Raserafim

25/03/2005

fiz o seguinte:
criei uma classe e herdei da classe TButton. assim consegui acessar todas as propriedades do TButton, inclusive a propriedade Color. criei um botão do tipo da classe que criei no form dinamicamente e mudei a propriedade Color; mas continuou aparecendo com a cor clBtnFace.

Agora pergunto: Por que alterei a propriedade Color e nada aconteceu?

E agora uma provável solução que preciso de ajuda para colocar em prática: encontrei três comandos que acho que podem dar certo:
PaintControls
PaintHandler
PaintWindow

alguém sabe como utilizar estes procedumentos?


GOSTEI 0
Marco Salles

Marco Salles

25/03/2005

Para Inserir efeitos de cores , é recomendavel tentar algo , usando a Classe TbitBtn.... Os controles TButton tem Uma Cor Fixa


GOSTEI 0
Raserafim

Raserafim

25/03/2005

Marco Salles, na verdade eu não quero mudar a cor especificamente do TButton. Alguns outros componentes como o THeaderControl (esse sim quero mudar a cor) além de vários outros, que não tem a propriedade Color, queria descobrir uma forma de conseguir.


GOSTEI 0
Massuda

Massuda

25/03/2005

Alguns componentes são desenhados diretamente pelo Windows e/ou pela VCL usando cores definidas pelo usuário nas Propriedades de Vídeo (ou via temas no caso do Windows XP).

No caso do THeaderControl, que é desenhado pelo Windows, a única forma de mudar a cor dele é usando o evento OnDrawSection e ajustando o Style das seções do controle em hsOwnerDraw; note que você terá que desenhar completamente cada seção do controle.


GOSTEI 0
POSTAR