Pergunta

Como poderia um alterar a opacidade de um controle baseado TWinControl? E por que eles não adicionar esse recurso para TControl / TWinControl nível (por que só TForm)?

Foi útil?

Solução

Controlar a opacidade de uma janela é oferecido por um recurso chamado janelas em camadas . Você pode ler mais sobre o recurso no MSDN . O recurso está disponível apenas para de nível superior janelas. Tanto quanto eu posso dizer, Desktop Window Manager ( "vidro" do Vista efeito) também só está disponível para janelas de nível superior.

As alternativas disponíveis para janelas filho são usar regiões janela para marca certas áreas de uma janela transparente como completamente, ou para usar bitmap mistura alfa desenhar todo o controle de si mesmo.

Outras dicas

Graças Lars.

Eu não como você faria. Pelo que entendi, o Windows só acrescentou a translucidez para janelas, razão pela qual TForm pode lidar com isso, mas não controles individuais. Lembre-se que a maior parte da VCL é simplesmente um invólucro em torno dos controles do Windows comuns, e por isso, se o Windows não fazê-lo, o controle VCL relacionado raramente quer. Componentes de terceiros, muitas vezes, em seguida, estender a funcionalidade básica.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top