Window fading
BlitzPlus Forums/BlitzPlus Programming/Window fading
| ||
;Userlibs: ; ;.lib "user32.dll" ; ;api_GetActiveWindow% () : "GetActiveWindow ;api_SetLayeredWindowAttributes% (hwnd%, crKey%, bAlpha%, dwFlags%) : "SetLayeredWindowAttributes" ;api_SetWindowLong% (hwnd%, nIndex%, dwNewLong%) : "SetWindowLongA" ; Const GWL_EXSTYLE = -20 win = CreateWindow("Example",100,100,300,300) wnd = api_GetActiveWindow () HideGadget win SetWinTransparenz(wnd,0) ShowGadget win FadeIn(wnd) Delay 5000 FadeOut(wnd) End Function FadeIn(WinHandle) For a = 1 To 255 SetWinTransparenz(WinHandle,a) : While WaitEvent(5):Wend Next End Function Function FadeOut(WinHandle) For a = 255 To 1 Step -1 SetWinTransparenz(WinHandle,a) : While WaitEvent(5):Wend Next End Function Function SetWinTransparenz (WinHandle, Transparenz) api_SetWindowLong(WinHandle,GWL_EXSTYLE,$00080000) api_SetLayeredWindowAttributes(WinHandle,0,Transparenz,2) End Function |
| ||
Will this only work with Win2000/XP? I thought, although I'm possibly wrong, that this API came in with Win2000 onwards. |
| ||
Yes, you need at least Windows 2000. |