<Return[G]><Top>

GetUpdateRect

Declare Function Api_GetUpdateRect& Lib "user32" Alias "GetUpdateRect" (ByVal hWnd&, lpRect As RECT, ByVal bErase&)

Declare Function GetUpdateRect Lib "user32" Alias "GetUpdateRect" (ByVal hwnd As Long, lpRect As RECT, ByVal bErase As Long) As Long

指定されたウィンドウの更新リージョンを完全に囲む、最小の長方形の座標を取得する。GetUpdateRect は、長方形の論理座標を取得する。更新リージョンが存在しない場合、空の長方形を取得する(すべての座標が 0 になる)。

パラメータ
hWnd
    更新リージョンを取得したいウィンドウのハンドルを指定する。
lpRect
    RECT 構造体へのポインタを指定する。関数から制御が返ると、この構造体に、更新リージョンを完全に囲む最小の長方形の座標が格納

    される。
    アプリケーションはこのパラメータに NULL を指定して、更新リージョンが存在するかどうかを判断することもできる。このパラメータが NULL

    で、更新リージョンが存在する場合、0 以外の値が返る。このパラメータが NULL で、更新リージョンが存在しない場合、0 が返る。この

    結果、無効な領域から WM_PAINT メッセージが返されたかどうか判断するための、簡単で効率的な方法が得られる。
bErase
    更新リージョンの背景を消去するかどうかを指定する。このパラメータが TRUE で、更新リージョンが空でない場合、GetUpdateRect 関数

    は指定されたウィンドウへ WM_ERASEBKGND メッセージを送信し、背景を消去する。

戻り値
    更新リージョンが存在する場合、0 以外の値が返る。
    更新リージョンが存在しない場合、0 が返る。
    Windows NT/2000:拡張エラー情報を取得するには、 関数を使う。

解説
    BeginPaint 関数が lpPaint パラメータの rcPaint メンバで取得する更新長方形は、GetUpdateRect 関数が取得する更新長方形と同じで

    ある。
    BeginPaint 関数は、更新リージョンを自動的に有効化する。このため、BeginPaint 関数を呼び出した直後に GetUpdateRect 関数を呼

    び出すと、常に空の更新リージョンが返る。