Функция CalculatePopupWindowPosition (winuser.h)
Вычисляет соответствующую позицию всплывающего окна, используя указанную точку привязки, размер всплывающего окна, флаги и необязательный прямоугольник исключения. Если указанный размер всплывающего окна меньше размера окна рабочего стола, используйте функцию CalculatePopupWindowPosition , чтобы убедиться, что всплывающее окно полностью отображается в окне рабочего стола, независимо от указанной точки привязки.
Синтаксис
BOOL CalculatePopupWindowPosition(
[in] const POINT *anchorPoint,
[in] const SIZE *windowSize,
[in] UINT flags,
[in, optional] RECT *excludeRect,
[out] RECT *popupWindowPosition
);
Параметры
[in] anchorPoint
Тип: const POINT*
Указанная точка привязки.
[in] windowSize
Тип: const SIZE*
Указанный размер окна.
[in] flags
Тип: UINT
Используйте один из следующих флагов, чтобы указать, как функция размещает всплывающее окно по горизонтали и вертикали. Флаги совпадают с флагами вертикального и горизонтального позиционирования функции TrackPopupMenuEx .
Используйте один из следующих флагов, чтобы указать, как функция размещает всплывающее окно по горизонтали.
Использует один из следующих флагов, чтобы указать, как функция размещает всплывающее окно по вертикали.
Используйте один из следующих флагов, чтобы указать, следует ли размещать горизонтальное или вертикальное выравнивание.
Следующий флаг доступен начиная с Windows 7.
Значение | Значение |
---|---|
|
Ограничивает всплывающее окно только в рабочей области. Если этот флаг не установлен, всплывающее окно ограничивается рабочей областью, только если точка ввода находится в рабочей области. Дополнительные сведения см. в разделах элементы rcWork и rcMonitor структуры MONITORINFO . |
[in, optional] excludeRect
Тип: RECT*
Указатель на структуру, задающую прямоугольник исключения. Может иметь значение NULL.
[out] popupWindowPosition
Тип: RECT*
Указатель на структуру, задающую позицию всплывающего окна.
Возвращаемое значение
Тип: BOOL
Если функция выполнена успешно, она возвращает значение TRUE; в противном случае возвращается значение FALSE. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Комментарии
TPM_WORKAREA поддерживается для функций TrackPopupMenu и TrackPopupMenuEx .
Требования
Минимальная версия клиента | Windows 7 [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 R2 [только классические приложения] |
Целевая платформа | Windows |
Header | winuser.h (включая Windows.h) |
Библиотека | User32.lib |
DLL | User32.dll |
См. также раздел
Справочные материалы