CopyCursor, DrawIcon, DrawIconEx. 3 страница



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 ‑ определяет, какие дочерние окна будут игнорироваться. Параметр может быть комбинацией следующих значений:

 

 

 Значение   Пояснение  
CWP _ ALL   Не игнорировать дочерние окна.  
CWP _ SKIPINVISIBLE   Игнорировать невидимые дочерние окна.  
CWP _ SKIPDISABLED   Игнорировать не принимающие фокус ввода дочерние окна.  
CWP _ SKIPTRANSPARENT   Игнорировать прозрачные дочерние окна.  

 

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

 

В случае успеха возвращается дескриптор дочернего окна, которое содержит точку и удовлетворяет условию, определенному значением параметра uFlags . Если точка лежит вне родительского окна или вызов функции завершился неудачей, возвращается NULL . Если точка находится внутри родительского окна, но не лежит ни в одном из дочерних окон, удовлетворяющих условию, определенному значением параметра uFlags , возвращается дескриптор родительского окна.

 

Комментарии

 

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

 

См. также

 

ChildWindowFromPoint, POINT, WindowFromPoint .

 

 

CloseWindow

 

 

Функция CloseWindow минимизирует (но не разрушает) определенное окно.

 

BOOL CloseWindow (

 

HWND  hWnd // дескриптор минимизируемого окна

);

 

Параметры

 

hWnd ‑ идентифицирует минимизируемое окно.

 

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

 

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

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

 

Комментарии

 

Окно минимизируется путем уменьшения его до размеров иконки и помещения его в область иконок над панелью задач. Windows отображает иконку окна и его заголовок вместо самого окна. Для разрушения окна приложение должно использовать функцию DestroyWindow .

 

См. также

 

ArrangeIconicWindows, DestroyWindow, IsIconic, OpenIcon .

 

 

EndDeferWindowPos

 

 

Функция EndDeferWindowPos одновременно обновляет положение и размер одного или более окон в одном цикле обновления экрана.

 

BOOL EndDeferWindowPos (

 

HDWP  hWinPosInfo // дескриптор внутренней структуры

);

 

Параметры

 

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

 

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

 

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

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

 

Комментарии

 

Функция EndDeferWindowPos отправляет сообщения WM _ WINDOWPOSCHANGING и WM _ WINDOWPOSCHANGED каждому окну, идентифицируемому во внутренней структуре.

 

См. также

 

BeginDeferWindowPos, DeferWindowPos , WM_WINDOWPOSCHANGED, WM_WINDOWPOSCHANGING.

 

 

FindWindow

 

 

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

 

HWND FindWindow (

 

LPCTSTR  lpClassName , // указатель на имя класса

LPCTSTR  lpWindowName // указатель на имя окна

);

 

Параметры

 

lpClassName ‑ указывает на завершающуюся нулем строку, определяющую имя класса или атом, идентифицирующий строку имени класса. Если этот параметр является атомом, то он должен быть глобальным атомом, созданным предыдущим вызовом функции GlobalAddAtom . 16‑ти битное значение атома должно быть размещено в младшем слове lpClassName , старшее слово должно быть равно нулю.

lpWindowName ‑ указывает на завершающуюся нулем строку, определяющую имя окна (заголовок окна). Если значение этого параметра равно NULL, то со значением lpWindowName совпадают имена всех окон.

 

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

 

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

 

См . также

 

EnumWindows, FindWindowEx, GetClassName, GlobalAddAtom .

 

 

FindWindowEx

 

 

Функция FindWindowEx извлекает дескриптор окна, чье имя класса и имя окна совпадают с указанными строками. Функция также просматривает дочерние окна, начиная с того, дескриптор которого передан функции в качестве параметра hwndChildAfter .

 

HWND FindWindowEx (

 

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

HWND  hwndChildAfter , // дескриптор дочернего окна

LPCTSTR  lpszClass , // указатель на имя класса

LPCTSTR  lpszWindow // указатель на имя окна

);

 

Параметры

 

hwndParent ‑ идентифицирует родительское окно, среди дочерних окон которого будет проводиться поиск.

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

hwndChildAfter ‑ идентифицирует дочернее окно. Поиск начинается со следующего окна в Z‑ последовательности. Окно, указанное параметром hwndChildAfter , должно быть прямым дочерним окном указанного параметром hwndParent окна, а не порожденным окном.

Если значение параметра hwndChildAfter равно NULL, поиск начинается с первого дочернего окна.

Примечание: Если значения обоих параметров hwndParent и hwndChildAfter равны NULL, функция проводит поиск среди всех окон верхнего уровня.

lpszClass ‑ указывает на завершающуюся нулем строку, определяющую имя класса или атом, идентифицирующий строку ‑ имя класса. Если этот параметр является атомом, он должен быть глобальным атомом, созданным предыдущим вызовом функции GlobalAddAtom . Значение атома должно быть помещено в младшее слово lpszClass , старшее слово должно быть равно нулю.

lpszWindow ‑ указывает на завершающуюся нулем строку, определяющую имя окна (заголовок окна). Если значение этого параметра равно NULL, то совпадающими со строкой считаются все имена окон.

 

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

 

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

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

 

См. также

 

EnumWindows, FindWindow, GetClassName, GlobalAddAtom .

 

 

GetClientRect

 

 

Функция GetClientRect возвращает координаты клиентской области окна. Клиентские координаты определяют верхний левый и правый нижний углы клиентской области. Поскольку клиентские координаты относительны левого угла клиентской области окна, то координатой верхнего левого угла является (0, 0).

 

BOOL GetClientRect (

 

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

LPRECT  lpRect // адрес структуры для клиентских координат

);

 

Параметры

 

hWnd ‑ идентифицирует окно, клиентские координаты которого возвращаются.

lpRect ‑ указывает на структуру, получающую клиентские координаты. Члены left и top равны нулю. Члены right и bottom содержат ширину и высоту окна.

 

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

 

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

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

 

См . также

 

GetWindowRect, RECT.

 

 

SetWindowText

 

 

Функция SetWindowText изменяет текст заголовка (если заголовок существует) указанного окна. Если указанное окно является элементом управления, то изменяется текст этого элемента управления.

 

BOOL SetWindowText (

 

HWND  hWnd , // дескриптор окна или элемента управления

LPCTSTR  lpString // адрес строки

);

 

Параметры

 

hWnd ‑ идентифицирует окно или элемент управления, чей текст изменяется.

lpString ‑ указывает на завершающуюся нулем строку, используемую в качестве нового заголовка окна или текста элемента управления.

 

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

 

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

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

 

Комментарии

 

Функция SetWindowText отправляет сообщение WM_SETTEXT указанному окну или элементу управления. Тем не менее, если окно является окном списка, созданным с параметром WS_CAPTION, SetWindowText устанавливает текст для элемента управления, а не для элементов списка.

Функция SetWindowText не разворачивает символы табуляции ( ASCII ‑код 0 x 09). Символы табуляции отображаются как вертикальная черта (|).

 

См . также

 

GetWindowText , WM_SETTEXT.

 

Каретка

 

CreateCaret

 

 

Функция CreateCaret создает новый внешний вид для системной каретки и присваивает владение кареткой указанному окну. Каретка может быть прямоугольником, линией или битовым образом.

 

BOOL CreateCaret (

 

HWND  hWnd , // дескриптор окна‑владельца

HBITMAP  hBitmap , // дескриптор битового образа для каретки

int  nWidth , // ширина каретки

int  nHeight // высота каретки

);

 

Параметры

 

hWnd ‑ идентифицирует окно, владеющее кареткой.

hBitmap ‑ идентифицирует битовый образ, который определяет вид каретки. Если значение этого параметра равно NULL, каретка представляет собой сплошной прямоугольник. Если значение этого параметра равно ( HBITMAP ) 1, каретка представляет собой серый прямоугольник. Если значение этого параметра является дескриптором битового образа, то каретка представляет собой указанный битовый образ. Дескриптор битового образа должен быть создан функциями CreateBitmap, CreateDIBitmap или LoadBitmap .

Если значение hBitmap является дескриптором битового образа, CreateCaret игнорирует значения параметров nWidth и nHeight ; битовый образ задает свои собственные ширину и высоту.

nWidth ‑ определяет ширину каретки в логических единицах. Если значение этого параметра равно нулю, ширина устанавливается в определяемую системой ширину рамки окна. Если значение hBitmap является дескриптором битового образа, CreateCaret игнорирует значение параметра nWidth .

nHeight ‑ определяет высоту каретки в логических единицах. Если значение этого параметра равно нулю, высота устанавливается в определяемую системой высоту рамки окна. Если значение hBitmap является дескриптором битового образа, CreateCaret игнорирует значение параметра nHeight .

 

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

 

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

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

 

Комментарии

 

Значения параметров nWidth and nHeight определяют ширину и высоту каретки в логических единицах. Точные ширина и высота в пикселях зависят от режима отображения окна.


Дата добавления: 2021-01-21; просмотров: 49; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!