Gå til innhold

Gjennomsiktig form med gjennomsiktig bilde


Anbefalte innlegg

Hei, Hvordan kan man få det som er hvitt bilde image1 til og bli helt gjennomsiktig og det som blir mørkere og mørkere blir mindre og mindre gjennomsiktig helt til svart som er ikke noe gjennomsiktig ? somtidig som formen som bilde er på er 100% gjennomsiktig slik at det som er hvitt på bilde blir gjennomsiktig gjennom formen ?

 

Er det vanskelig eller ? :green:

Lenke til kommentar
Videoannonse
Annonse

Her er hvertfall det for å få formen gjennomsiktig:

 

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

Const LWA_COLORKEY = &H1
Const LWA_ALPHA = &H2
Const GWL_EXSTYLE = (-20)
Const WS_EX_LAYERED = &H80000
Private Declare Function GetForegroundWindow Lib "user32" () As Long
dim transparant as double

Private Sub Form_Load()
transparant = 90

Ret = GetWindowLong(Me.hwnd, GWL_EXSTYLE)
Ret = Ret Or WS_EX_LAYERED
SetWindowLong Me.hwnd, GWL_EXSTYLE, Ret
SetLayeredWindowAttributes Me.hwnd, 0, transparant, LWA_ALPHA
End Sub

 

Edit: ser ut som den krever enormt når du trykker på X, - eller minimize :wow:

Endret av Jonas
Lenke til kommentar

Jeg tengte jeg skulle legge den gjennomsiktige formen unnder en annen som er normale får at det skal se ut som formen kaster skygge på skrivebordet.

 

Takk får svar men jeg mangler fremdeles koden får gjennomsiktig bilde på det hvite osv...

Lenke til kommentar

For å få den hvite fargen til å bli 100& gjennomsiktig, kan du bruke følgende kode:

 

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

Const LWA_COLORKEY = &H1
Const LWA_ALPHA = &H2
Const GWL_EXSTYLE = (-20)
Const WS_EX_LAYERED = &H80000

Private Sub Form_Load()

Dim Ret As Long

Ret = GetWindowLong(Me.hWnd, GWL_EXSTYLE)
Ret = Ret Or WS_EX_LAYERED

SetWindowLong Me.hWnd, GWL_EXSTYLE, Ret
SetLayeredWindowAttributes Me.hWnd, vbWhite, 128, LWA_COLORKEY Or LWA_ALPHA

End Sub

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...