Рейтинговые книги
Читем онлайн Русский справочник по Win32 API - Тарас Сорока

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 2 3 4 5 6 7 8 9 10 ... 34

См . также

AdjustWindowRect, CreateWindowEx, RECT .

ArrangeIconicWindows

Функция ArrangeIconicWindows упорядочивает все минимизированные (в виде иконок) окна указанного родительского окна.

UINT ArrangeIconicWindows (

HWND hWnd // дескриптор родительского окна

);

Параметры

hWnd - идентифицирует родительское окно.

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

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

В случае неудачи возвращается нуль. Для получения дополнительной информации об ошибке вызовите функцию GetLastError .

Комментарии

Приложение, которое работает со своими минимизированными дочерними окнами, может использовать функцию ArrangeIconicWindows для упорядочивания иконок окон в родительском окне. Функция также может упорядочивать иконки окон на рабочем столе. Для получения дескриптора рабочего стола используйте функцию GetDesktopWindow .

Приложение отправляет сообщение WM _ MDIICONARRANGE MDI -окну для упорядочивания его минимизированных дочерних MDI -окон.

См. также

CloseWindow, GetDesktopWindow .

BeginDeferWindowPos

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

HDWP BeginDeferWindowPos (

int nNumWindows // количество окон

);

Параметры

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

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

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

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

Комментарии

Структура, содержащая информацию о размере и положении для одного или более окон, является внутренней структурой Windows . Приложение не может иметь к ней прямой доступ.

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

Если одно из окон, описанных в структуре, имеет установленный флаг SWP _ HIDEWINDOW или SWP _ SHOWWINDOW, то не репозиционируется ни одно из окон.

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

См. также

DeferWindowPos, EndDeferWindowPos, SetWindowPos .

BringWindowToTop

Функция BringWindowToTop помещает указанное окно в вершину Z -последовательности. Если окно является окном верхнего уровня - оно активизируется. Если окно представляет собой дочернее окно - активизируется родительское окно верхнего уровня.

BOOL BringWindowToTop (

HWND hWnd // дескриптор окна

);

Параметры

hWnd - идентифицирует окно, помещаемое в вершину Z -последовательности.

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

В случае успеха возвращается ненулевое значение.

В случае неудачи возвращается нуль. Для получения дополнительной информации вызовите функцию GetLastError .

Комментарии

Используйте функцию BringWindowToTop для вывода окна, частично или полностью закрытого другими окнами, на передний план.

Результат вызова этой функции похож на результат вызова SetWindowPos для изменения позиции окна в Z -последовательности, но вызов BringWindowToTop не делает указанное окно окном верхнего уровня.

Если приложение не находится на переднем плане, и необходимо сделать его приложением переднего плана, вызовите функцию SetForegroundWindow .

См. также

SetWindowPos, SetActiveWindow, SetForegroundWindow .

CascadeWindows

Функция CascadeWindows располагает каскадом (каскадирует) указанные окна или дочерние окна указанного родительского окна.

WORD WINAPI CascadeWindows (

HWND hwndParent , // дескриптор родительского окна

UINT wHow , // типы окон, которые не подвергаются каскадированию

CONST RECT * lpRect , // прямоугольник, в которым каскадируются окна

UINT cKids , // количество каскадируемых окон

const HWND FAR *lpKids // массив дескрипторов окон

);

Параметры

hwndParent - идентифицирует родительское окно. Если значение этого параметра равно NULL, используется окно рабочего стола.

wHow - определяет флаг каскадирования. Доступно единственное значение: MDITILE _ SKIPDISABLED, предотвращающее каскадирование дочерних MDI окон, не принимающих ввод пользователя ( disabled windows ).

lpRect - указатель на структуру типа SMALL _ RECT , которая определяет прямоугольную область, в экранных координатах, внутри которой каскадируются окна. Значение параметра может быть равно NULL, тогда используется клиентская область родительского окна.

cKids - определяет число элементов в массиве, заданным параметром lpKids . Значение параметра игнорируется, если значение lpKids равно нулю.

lpKids - указатель на массив дескрипторов окон, идентифицирующих каскадируемые окна. Если значение этого параметра равно NULL, каскадируются дочерние окна указанного родительского окна (или окна рабочего стола).

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

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

В случае неудачи возвращается нуль.

См. также

SMALL_RECT .

ChildWindowFromPoint

Функция ChildWindowFromPoint определяет, какое из дочерних окон, принадлежащих родительскому окну, содержит указанную точку (если таки дочерние окна существуют).

HWND ChildWindowFromPoint (

HWND hWndParent , // дескриптор родительского окна

POINT Point // структура с координатами точки

);

Параметры

hWndParent - идентифицирует родительское окно.

Point - определяет структуру типа POINT , которая содержит клиентские координаты проверяемой точки.

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

В случае успеха возвращается дескриптор дочернего окна, которое содержит точку, даже если это дочернее окно скрыто или не принимает фокус ввода ( disabled ). Если точка лежит вне родительского окна, возвращается NULL . Если точка находится внутри родительского окна, но не лежит ни в одном из дочерних окон, возвращается дескриптор родительского окна.

Комментарии

Windows ведет внутренний список, содержащий дескрипторы дочерних окон, связанных с родительским окном. Порядок дескрипторов в этом списке зависит от Z -последовательности дочерних окон. Если указанная точка содержится более чем в одном дочернем окне, Windows возвращает дескриптор первого окна в списке, содержащего точку.

См. также

ChildWindowFromPointEx, POINT, WindowFromPoint .

ChildWindowFromPointEx

Функция ChildWindowFromPointEx определяет, какое из дочерних окон, принадлежащих родительскому окну, содержит указанную точку (если таки дочерние окна существуют). Функция может игнорировать невидимые, не принимающие фокус ввода ( disabled ) и прозрачные дочерние окна.

HWND ChildWindowFromPointEx (

HWND hwndParent , // дескриптор родительского окна

POINT pt , // структура с координатами точки

UINT uFlags // флаги игнорирования

);

Параметры

hWndParent - идентифицирует родительское окно.

Point - определяет структуру типа POINT , которая содержит клиентские координаты проверяемой точки.

uFlags - определяет, какие дочерние окна будут игнорироваться. Параметр может быть комбинацией следующих значений:

Значение

1 2 3 4 5 6 7 8 9 10 ... 34
На этой странице вы можете бесплатно читать книгу Русский справочник по Win32 API - Тарас Сорока бесплатно.
Похожие на Русский справочник по Win32 API - Тарас Сорока книги

Оставить комментарий