指定の条件でクライアント領域内の指定の範囲を再描画する
Declare Function RedrawWindow Lib "user32.dll" _
(ByVal hWnd As Long, lpreUpdat As RECT, _
ByVal hrgnUpdate As Long, ByVal flags As Long) As Long
Declare Function RedrawWindow Lib "user32.dll" _
(ByVal hWnd As Integer, lpreUpdat As RECT, _
ByVal hrgnUpdate As Integer, ByVal flags As Integer) As Integer
BOOL RedrawWindow(
HWND hWnd,
CONST RECT *lprcUpdate,
HRGN hrgnUpdate,
UINT flags
);
引数
hWnd
再描画するウィンドウのハンドルlprcUpdate
0のときディスクトップウィンドウが対象となる
再描画する範囲を指定するRECT構造体hrgnUpdate
hrgnUpdateに領域のハンドルを指定したとき、このパラメータは無視される
更新領域のハンドル(0も可)flags
hrgnUpdateとlprcUpdateともに0のときクライアント領域全体が更新領域となる
再描画の方法を指定する定数の組み合わせ戻り値
正常終了のとき 0以外備考
エラーのとき 0
ディスクトップウィンドウでこの関数を使用する場合はRDW_ERASEを使用するflagsの定数
(ウィンドウを無効化するときに使用する定数)
RDW_ERASE = &H4 再描画領域のバックグラウンドを消去
RDW_FRAME = &H400 再描画領域内であればクライアント領域外も更新
RDW_INTERNALPAINT = &H2 WM_PAINTを発行する
RDW_INVALIDATE = &H1 再描画領域を無効化する
(ウィンドウを有効化するときに使用する定数)
RDW_NOERASE = &H20 再描画領域のバックグラウンドは消去させない
RDW_NOFRAME = &H800 非クライアント領域は再描画させない
(RDW_VALIDATEも指定)
RDW_NOINTENALPAINT = &H10 待機中のWM_PAINTを実行
RDW_VALIDATE = &H8 再描画領域を有効化する
(再描画時の動作方法を指定するフラッグ)
RDW_ERASENOW = &H200 再描画領域をすぐ消去
RDW_UPDATENOW = &H100 再描画領域をすぐ更新する