Window を指定回点滅させる (FlashWindowEx)
user32.dll の FlashWindowEx を用いて、Window を 指定回数点滅させます。
1 回だけ点滅させる場合は、Windows を点滅させる (FlashWindow) を参照してください。
サンプルのダウンロード
■サンプルの説明

NumericUpDown に 点滅させたい回数を指定して、点滅 ボタンを押下すると、Form が 100 ミリ秒間隔で 指定回点滅します。
■コード
F0005_FlashWindowEx.vb
Imports System.Runtime.InteropServices ''' <summary> ''' FlashWindow(user32.dll) ''' </summary> Partial Public Class F0005_FlashWindowEx ''' <summary> ''' FlashWindowEx(ウィンドウを指定回点滅させる)の宣言 ''' </summary> <DllImport("user32.dll", CharSet:=CharSet.Auto)> _ Private Shared Function FlashWindowEx( _ ByRef pfwi As FLASHWINFO) _ As Integer End Function ''' <summary> ''' FLASHWINFO 構造体 ''' </summary> Private Structure FLASHWINFO Public cbSize As Integer Public hWnd As IntPtr Public dwFlags As Integer Public uCount As Integer Public dwTimeout As Integer End Structure '点滅停止 Private Const FLASH_STOP As Integer = &H0 'ウィンドウのタイトル部分のみ点滅 Private Const FLASH_CAPTION As Integer = &H1 'タスクバーのみ点滅 Private Const FLASH_TRAY As Integer = &H2 '全部点滅 Private Const FLASH_ALL As Integer = FLASH_CAPTION Or FLASH_TRAY 'FLASH_STOPが呼び出されるまで点滅 Private Const FLASH_TIMER As Integer = &H4 'ウィンドウがアクティブになるまで点滅 Private Const FLASH_TIMERNOFG As Integer = &HC ''' <summary> ''' ロード時のイベント ''' </summary> Private Sub F0005_FlashWindowEx_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Me.Text = "F0005_FlashWindowEx" Me.Button1.Text = "点滅" Me.NumericUpDown1.Minimum = 1 Me.NumericUpDown1.Maximum = 50 Me.NumericUpDown1.Value = 5 End Sub ''' <summary> ''' 点滅ボタンクリック時のイベント ''' </summary> Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click Dim pfwi As FLASHWINFO With pfwi .hWnd = Me.Handle .dwFlags = FLASH_ALL .uCount = Integer.Parse(Me.NumericUpDown1.Value.ToString()) '回数 .dwTimeout = 100 '100ミリ秒間隔で点滅する End With '点滅 FlashWindowEx(pfwi) End Sub End Class