InvalidateRgn 函式 (winuser.h)

InvalidateRgn 函式會將它新增至視窗的目前更新區域,使指定區域內的工作區失效。 當下一 個WM_PAINT 訊息發生時,無效的區域以及更新區域中的所有其他區域都會標示為繪製。

語法

BOOL InvalidateRgn(
  [in] HWND hWnd,
  [in] HRGN hRgn,
  [in] BOOL bErase
);

參數

[in] hWnd

具有要修改之更新區域的視窗句柄。

[in] hRgn

要加入至更新區域的區域句柄。 區域假設有用戶端座標。 如果此參數為 NULL,則會將整個工作區新增至更新區域。

[in] bErase

指定在處理更新區域時,是否應該清除更新區域內的背景。 如果此參數為 TRUE,則會在呼叫 BeginPaint 函式時清除背景。 如果參數為 FALSE,背景會保持不變。

傳回值

傳回值一律為非零。

備註

無效的區域會在更新區域中累積,直到處理下一 個WM_PAINT 訊息,或使用 ValidateRectValidateRgn 函式驗證區域為止。

每當WM_PAINT訊息的更新區域不是空的,而且該視窗的應用程式佇列中沒有其他訊息時,系統就會將 WM_PAINT 訊息傳送至視窗。

指定的區域必須使用其中一個區域函式來建立。

如果 bErase 參數對更新區域的任何部分都是 TRUE ,則會清除整個區域中的背景,而不只是在指定的部分。

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 winuser.h (包括 Windows.h)
程式庫 User32.lib
Dll User32.dll
API 集合 ext-ms-win-ntuser-draw-l1-1-0 (於 Windows 8)

另請參閱

BeginPaint

InvalidateRect

繪製和繪製函式

繪製和繪圖概觀

ValidateRect

ValidateRgn

WM_PAINT