1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
Private Declare Auto Function FlashWindowEx Lib "user32" ( _
ByRef FWI As FLASHWINFO) _
As Boolean
''' <summary>Den Blinkvorgang beenden und zum Originalzustand zurücksetzen</summary>
Private Const FLASHW_STOP = 0
''' <summary>Die Titelleiste des Fensters blinken lassen</summary>
Private Const FLASHW_CAPTION = &H1
''' <summary>Den Taskbar-Button des Fensters blinken lassen</summary>
Private Const FLASHW_TRAY = &H2
''' <summary>FLASHW_CAPTION und FLASHW_TRAY werden kombiniert</summary>
Private Const FLASHW_ALL = (FLASHW_CAPTION Or FLASHW_TRAY)
Private Structure FLASHWINFO
Dim cbSize As UInt16
Dim hwnd As IntPtr
Dim dwFlags As UInt32
Dim uCount As UInt16
Dim dwTimeout As UInt32
End Structure
''' <summary>
''' Mit dieser Funktion kann man ein Fenster blinken lassen um z.B. den Benutzer auf neue aktivität im Programm aufmerksam zu machen.
''' </summary>
''' <param name="Handle">Gibt den Fensterhandle an</param>
''' <param name="FlashMode">Gibt den Blink-Modus an (Taskleiste, Titelleiste oder beide)</param>
''' <param name="FlashCount">Gibt die Anzahl der Blink-Wiederholungen an</param>
''' <param name="Speed">Gibt die Blinkgeschwindigkeit in Millisekunden an. Wenn der Wert 0 ist wird die Standardgeschwindigkeit genommen</param>
Public Sub FlashWindow(ByVal Handle As Integer, ByVal FlashMode As Integer, ByVal FlashCount As Integer, Optional ByVal Speed As Integer = 0)
Dim FlashInfo As New FLASHWINFO
FlashInfo.cbSize = System.Runtime.InteropServices.Marshal.SizeOf(FlashInfo)
FlashInfo.dwFlags = FlashMode
FlashInfo.dwTimeout = Speed
FlashInfo.hwnd = Handle
FlashInfo.uCount = FlashCount
FlashWindowEx(FlashInfo)
End Sub
|