Code: Select all
;Autor:Leo
;PureBasic-Lounge (German Forum)
Procedure FlashWindow(hwnd,count,timeout,flags)
;Die Strukture FLASHWINFO wird für den
;Win Api Befehl FlashWindowEx_() gebraucht
Structure FLASHWINFO
cbSize.l
hwnd.l
dwFlags.l
uCount.l
dwTimeout.l
EndStructure
;Variable mit der Strukture FLASHWINFO erstellen
Info.FLASHWINFO
;Größe der Strukture in Bytes
Info\cbSize = SizeOf(FLASHWINFO)
;Die Titelleiste welches Fensters blinken soll
Info\hwnd = hwnd
;Flags:
;#FLASHW_CAPTION: Lässt nur die Titelleiste blinken (In Hex: $5)
;#FLASHW_TRAY : Lässt nur das Teil in der Taskbar blinken (In Hex: $6)
;#FLASHW_ALL : Beides zusammen (In Hex: $7)
;Es gibt noch mehr Flags, die aber meiner Meinung nach nicht
;nützlich sind
Info\dwFlags= flags;#FLASHW_ALL
;Wie oft das Fenster blinken soll.
;Wenn null angegeben wird, dann blinkt
;das Fenster immer
Info\uCount = count
;Wie lange zwischen dem blinken gewartet werden soll (in Millisekunden),
;Wenn null angegeben wird, dann wird die Standart Blinkwartezeit
;gewählt
Info\dwTimeout = timeout
;Jetzt die Parameter übergeben und die Funktion aufrufen
FlashWindowEx_(Info)
EndProcedure
;Beispiel
;Fenster öffnen
hwnd = OpenWindow(0,0,0,200,200,#PB_Window_ScreenCentered|#PB_Window_SystemMenu,"Flash Window")
FlashWindow(hwnd,0,500,$7)
Repeat:Until WaitWindowEvent()=#WM_CLOSE