#115 | フォームのキャプションを点滅させるには? | VBA、API | |
WindowsAPIの「FlashWindow」関数を使うと、フォームのキャプション(標題の部分)を点滅させることができます。 FlashWindow関数はAPI関数ですので、プログラム中でこれを使うためには、標準モジュールの"Declarations"セクションに次の宣言を追加します。 Declare Function FlashWindow Lib "user32" _
ただし、実際にはこの関数はキャプションの点滅ではなく、現在の状態を反転させるだけです。"点滅"という動作を行わせるためには、複数回この関数を呼び出さなければなりません。次の例では、"フォーム1"のキャプションを0.5秒間隔で3回点滅(点く/消えるを3回繰り返し)させます。
(ByVal hWnd As Long, ByVal bInvert As Long) As Long Dim frm As Form
Dim iintLoop As Integer Dim dtmCurTime As Date Const cdblWaitTime As Double = 0.5 Const cintRepeat As Integer = 3 Set frm = Forms!フォーム1 '複数回点滅のループ For iintLoop = 1 To cintRepeat * 2 '1回分の点灯または消灯を行います FlashWindow frm.hwnd, True '一定時間待機します dtmCurTime = Now + cdblWaitTime / 24 / 3600 Do Until Now >= dtmCurTime Loop Next iintLoop 'キャプションの状態をリセットします FlashWindow frm.hwnd, False |
|||
|
Copyright © T'sWare All rights reserved |