Semitransparência?
Estive pensando.
Como fazer transparência (ou semitransparente) de um TForm sem que seus componentes também assumam a propriedade Blend?
ou
Como fazer para um componente, TPanel por exemplo, ficar transparente (ou semitransparente) sem que os componentes dentro dele também assumam a transparência.
Estou perguntando isto porque ainda não vi meios de criar um efeito ´Glass´ sem que todos os componentes da aplicação (Form que seja) sejam afetados.
Como fazer transparência (ou semitransparente) de um TForm sem que seus componentes também assumam a propriedade Blend?
ou
Como fazer para um componente, TPanel por exemplo, ficar transparente (ou semitransparente) sem que os componentes dentro dele também assumam a transparência.
Estou perguntando isto porque ainda não vi meios de criar um efeito ´Glass´ sem que todos os componentes da aplicação (Form que seja) sejam afetados.
Marcosrocha
Curtidas 0
Respostas
Woinch
08/05/2009
Se todos os controles são considerados ´Forms´ a baixo nível. Será que não tem como utilizar a API do Windows passando apenas o Handle do componente que você quer deixar transparente?
GOSTEI 0
Marcosrocha
08/05/2009
Hierarquia de um TFormHierarquia de um TEditNos fontes do Delphi a propriedade AlphaBlend (que define transparência) chama uma função chamada SetLayeredAttribs que defina a transparência de um TCustomForm, porém se a API do Windows não suportar (não sei se suporta) não adianta definir o Handle de um componente para esta função.
Certa vez tentei fazer com que a linha inteira de uma TreeView ficasse selecionada quando a propriedade ShowLines estivesse ligada, contudo, a API do Windows não suporta este método então não adiantou ´forçar´ o código.
Por isso estou querendo saber se tem como, se for por meio de API Calls ou algum método (função) pronta do Delphi, definir transparência apenas para o Form e não seus componentes para que eu possa continuar um de meus projetos pessoais.
TForm TCustomForm TScrollingWinControl TWinControl TControl TComponent TPersistent, IInterface, IInterfaceComponentReference
TEdit TCustomEdit TWinControl TControl TComponent TPersistent, IInterface, IInterfaceComponentReference
Certa vez tentei fazer com que a linha inteira de uma TreeView ficasse selecionada quando a propriedade ShowLines estivesse ligada, contudo, a API do Windows não suporta este método então não adiantou ´forçar´ o código.
Por isso estou querendo saber se tem como, se for por meio de API Calls ou algum método (função) pronta do Delphi, definir transparência apenas para o Form e não seus componentes para que eu possa continuar um de meus projetos pessoais.
GOSTEI 0