LockWindowUpdate 函式 (winuser.h)
LockWindowUpdate 函式會停用或啟用指定視窗中的繪圖。 一次只能鎖定一個視窗。
語法
BOOL LockWindowUpdate(
[in] HWND hWndLock
);
參數
[in] hWndLock
將停用繪圖的視窗。 如果此參數為 NULL,則會啟用鎖定視窗中的繪圖。
傳回值
如果函式成功,則傳回非零的值。
如果函式失敗,則傳回值為零,表示發生錯誤或已鎖定另一個視窗。
備註
LockWindowUpdate 函式的目的是允許在視窗上繪製拖放意見反應,而不會干擾視窗本身。 意圖是,在繪製意見反應時鎖定視窗,並在意見反應完成時解除鎖定。 LockWindowUpdate 不適用於視窗重繪的一般用途隱藏。 使用 WM_SETREDRAW 訊息來停用重新繪製特定視窗。
如果具有鎖定視窗的應用程式 (或任何鎖定的子視窗) 呼叫 GetDC、 GetDCEx 或 BeginPaint 函式,則呼叫的函式會傳回具有空白之可見區域的裝置內容。 這會在應用程式呼叫 LockWindowUpdate 以解除鎖定視窗之前發生,並指定 hWndLock 的 NULL 值。
如果應用程式嘗試在鎖定的視窗中繪製,系統會在周框內記錄嘗試作業的範圍。 當視窗解除鎖定時,系統會使這個周框內的區域失效,強制最終 WM_PAINT 訊息傳送至先前鎖定的視窗及其子視窗。 如果視窗更新鎖定時未發生繪圖,則不會有任何區域失效。
LockWindowUpdate 不會讓指定的視窗不可見,也不會清除WS_VISIBLE樣式位。
無法移動鎖定的視窗。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | winuser.h (包括 Windows.h) |
程式庫 | User32.lib |
Dll | User32.dll |
API 集合 | ext-ms-win-ntuser-draw-l1-1-2 (於 Windows 10 10.0.10240 版) |