Функция BeginDeferWindowPos (winuser.h)

Выделяет память для структуры с несколькими окнами и возвращает дескриптор в структуру.

Синтаксис

HDWP BeginDeferWindowPos(
  [in] int nNumWindows
);

Параметры

[in] nNumWindows

Тип: int

Начальное число окон, для которых будут храниться сведения о положении. Функция DeferWindowPos при необходимости увеличивает размер структуры.

Возвращаемое значение

Тип: HDWP

Если функция выполняется успешно, возвращаемое значение определяет структуру позиции с несколькими окнами. Если для выделения структуры недостаточно системных ресурсов, возвращаемое значение равно NULL. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Структура позиции с несколькими окнами является внутренней структурой; приложение не может получить к нему прямой доступ.

DeferWindowPos заполняет структуру позиции с несколькими окнами сведениями о целевой позиции одного или нескольких окон, которые будут перемещены. Функция EndDeferWindowPos принимает дескриптор для этой структуры и перемещает окна с помощью сведений, хранящихся в структуре.

Если системе необходимо увеличить размер структуры позиции с несколькими окнами сверх начального размера, заданного параметром nNumWindows , но не удается выделить для этого достаточно памяти, система завершается сбоем всей последовательности позиционирования окна (BeginDeferWindowPos, DeferWindowPos и EndDeferWindowPos). Указав максимальный необходимый размер, приложение может обнаружить и обработать сбой на ранних этапах процесса.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header 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