BeginDeferWindowPos 函式 (winuser.h)

為多視窗位置結構配置記憶體,並將句柄傳回至 結構。

語法

HDWP BeginDeferWindowPos(
  [in] int nNumWindows
);

參數

[in] nNumWindows

類型: int

要儲存位置資訊的初始視窗數目。 DeferWindowPos 函式會視需要增加結構的大小。

傳回值

類型: HDWP

如果函式成功,則傳回值會識別多視窗位置結構。 如果系統資源不足而無法配置結構,則傳回值為 NULL。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

備註

多視窗位置結構是內部結構;應用程式無法直接存取。

DeferWindowPos 會填入多視窗位置結構,其中包含即將移動之一或多個視窗的目標位置相關信息。 EndDeferWindowPos 函式會接受這個結構的句柄,並使用儲存在 結構中的資訊來重新置放視窗。

如果系統必須增加多個視窗位置結構的大小,超過 nNumWindows 參數所指定的初始大小,但無法配置足夠的記憶體來執行此動作,則系統會讓整個視窗定位順序失敗, (BeginDeferWindowPosDeferWindowPosEndDeferWindowPos) 。 藉由指定所需的大小上限,應用程式可以在程式中早期偵測並處理失敗。

規格需求

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

另請參閱

概念

DeferWindowPos

EndDeferWindowPos

參考

SetWindowPos

Windows