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 訊息,或使用 ValidateRect 或 ValidateRgn 函式驗證區域為止。
每當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) |