更新リージョンの無効化と検証
アプリケーションは、ウィンドウの一部を無効化し、 InvalidateRect または InvalidateRgn 関数を使用して更新領域を設定します。 これらの関数は、指定された四角形または領域 (クライアント座標) を更新領域に追加し、四角形または領域と、システムまたはアプリケーションが以前に更新領域に追加した可能性のあるものとを組み合わせています。
InvalidateRect 関数と InvalidateRgn 関数は、WM_PAINTメッセージを生成しません。 代わりに、ウィンドウがメッセージ キュー内の他のメッセージを処理している間に、これらの関数によって行われた変更と独自の変更がシステムによって蓄積されます。 変更を累積することで、ウィンドウはビットと部分を一度に 1 ステップ更新するのではなく、すべての変更を一度に処理します。
ValidateRect 関数と ValidateRgn 関数は、指定した四角形または領域を更新領域から削除することで、ウィンドウの一部を検証します。 これらの関数は、通常、 WM_PAINT メッセージを 受信する前に、ウィンドウが更新領域の画面の特定の部分を更新したときに使用されます。