Jump to content

Recommended Posts

Posted

Boas... desde já felicito P@P porque acho que deviam existir mais redes de programadores assim! 😁 Agora, relativamente ao Post que aqui venho fazer é apenas uma sugestão na definição de forms translúcidas/transparentes já que sempre ajuda no design das mesmas.

Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function SetLayeredWindowAttributes Lib "user32" (ByVal hWnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long

GWL_EXSTYLE = (-20)
WS_EX_LAYERED = &H80000

Estas Apis e as respectivas constantes são o requerido para criar translucidez nas forms.

1º Guarda-se o valor original da janela: return=GetWindowLong(hWnd,GWL_EXSTYLE)

2º Define-se a janela como camada: SetWindowLong hWnd,GWL_EXSTYLE,WS_EX_LAYERED or return

3º Aplica-se a transparência: SetLayeredWindowAttributes Hwnd, ColorKey, bTransp, TransTag

NOTA: hWnd é o handle da janela a ser aplicada a transparência

          TransTag define se SetLayeredWindowAttributes deve aplicar a transparência segundo o canal Alpha (bTransp) ou segundo o canal RGB (ColorKey)

          ColorKey é a cor que será totalmente transparente quando TransTag = 1

          bTransp é o valor (bytes) da transparência a ser aplicada quando TransTag = 2

          TransTag pode ser 3 (Both) e usufruir, portanto, de transparência e de translucidez.

Espero que tenha servido para ajudar nalguma coisa! Abraços a todos e continuem o belo trabalho!! 😉 :smoke:

Posted

Boas,

Em primeiro lugar bem-vindo ao forum. 😁

Foi um grande 1º post, sem dúvida. Um exemplo para alguns dos membros que cá andam e que ainda não aprenderam a fazer posts em condições, mesmo com um tutorial que já criei.

😉

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.