Многооконный интерфейс. Создание MDI-приложения, страница 4

Таблица 27.3 Перечень функций и сообщений MDI

Функция

Назначение

Arrangelconic Windows

Располагает свернутые дочерние окна в нижней части клиентского окна.

Cascade Windows

Располагает несвернутые дочерние окна каскадно (с наложением).

CreateMDIWindow

Создает новое дочернее окно и возвращает его дескриптор.

DefFrameProc

Используется в оконной процедуре главного окна для обработки всех необработанных сообщений окна.

DefMDIChildProc

Используется в оконной процедуре дочернего окна MDI для обработки всех необработанных сообщений окна.

TiteWindows

Располагает несвернутые дочерние окна мозаикой (без наложения).

TranslateMDISysAccel

Используется в главном цикле сообщений MDI-приложения для обработки всех предопределенных клавиш сокращенного доступа, относящихся к окнам MDI.

WM_MDIACnVATE

При отправке клиентскому окну вызывает активизацию нового дочернего окна. Когда принимается дочерним окном, указывает, что окно становится активным или неактивным.

WM_MDICASCADE

При отправке клиентскому окну вызывает каскадное расположение всех дочерних окон.

WM_MDICREATE

При отправке клиентскому окну создает новое дочернее окно.

WM_MDIDESTROY

Указывает на удаляемое дочернее окно.

WM_MDIGETACTIVE

При отправке клиентскому окну возвращает дескриптор дочернего окна, активного в данный момент.

WM_MDIICONARRANGE

При отправке клиентскому окну вызывает расположение всех свернутых дочерних окон в нижней части клиентского окна.

WM_MDIMAXIMIZE

При отправке клиентскому окну разворачивает указанное дочернее окно.

WM_AADINEXT

При отправке клиентскому окну активизирует окно, которое следует после или предшествует указанному дочернему.

WM_MDIREFRESHMENU

При отправке клиентскому окну вызывает обновление состояния меню после внесения изменений.

WM_MDIRESTORE

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

WM_MDISETMENU

При отправке клиентскому окну устанавливает строку меню главного окна. Это позволяет реализовывать индивидуальные меню для дочерних окон.

WM_MDITILE

При отправке клиентскому окну вызывает мозаичное расположение дочерних окон.

ArrangelconicWindows                         • Windows 98   • Windows 2000

Описание

Упорядочивает все свернутые дочерние окна. В качестве альтернативы приложение   может   использовать   сообщение    WM_MDIICONARRANGE. Windows располагает свернутые окна в нижней части клиентского окна.

Синтаксис

UINT ArrangeIconicWindows( HWND hWndClient )

Параметры

HWndClient

HWND: Указывает дескриптор клиентского окна, которое управляет данным дочерним окном.

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

UINT: При успешном выполнении возвращается высота одного ряда значков. В противном случае возвращается 0.

Включаемый файл

winuser.h

Связанные сообщения WM_MDIICONARRANGE

Пример

Следующий фрагмент кода относится к оконной процедуре главного окна MDI. Он отвечает на выбор элемента меню с идентификатором IDM_ARRANGE.

HWND   hWndClient;

LRESULT   CALLBACK  WndProc (  

HWND   hWnd,  

UINT   uMsg,  

WPARAM  wParam,  

LPARAM   !Param)

{ switch (   uMsg   )

{ case   WM_COMMAND    :

switch (   LOWORD(   wParam   )    )

{ case   IDM_ARRANGE    :  

ArrangelcOnlcHimtow» (   MfndCli«nt   );

break ;

CascadeWindows                                 • Windows 98   • Windows 2000

Описание

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

Синтаксис

WORD WINAPI CascadeWindows( HWND hWndParent, UINT wFlags, CONST RECT* IpWindowRect, UINT nWindowCount, CONST HWND* IpWndArray )

Параметры

HWndParent

HWND: Дескриптор родительского окна. Ему принадлежат упорядочиваемые дочерние окна. Обычно этот параметр дескриптор клиентского окна MDI. Если параметр имеет значение NULL, предполагается окно рабочего стола.

WFlags

UINT: Флаги режима упорядочения. Может принимать одно из значений, перечисленных в табл. 27.4.

Таблица 27.4 Значения параметра WRags функции CascadeWindows

Значение

Описание

MDITITLE  SKIPDISABLED

Запрет каскадного расположения отключенных дочерних окон

MDITILE_ZORDER

(Windows 2000) Располагает окна в Z-порядке.

lpWindowRect

CONST RECT*: Указатель на структуру RECT, описывающую границы области, в которой располагаются дочерние окна. Если параметр имеет значение NULL, предполагается вся область родительского окна.

NWindowCount

UINT: Количество дескрипторов окна, включенных в массив IpWndArray. Если параметр IpWndArray имеет значение NULL, параметр NWindowCount

игнорируется.

lpWndArray

CONST HWND*: Массив дескрипторов дочерних окон. Если этот параметр равен NULL, упорядочению подвергаются все дочерние окна родительского окна.

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

WORD: При успешном выполнении возвращается количество упорядоченных окон. Иначе возвращается значение 0.

Включаемый файл

winuser.h

См. также

CascadeChildWindows, TileChildWindows, TileWindows

Связанные сообщения WM_MDICASCADE

Пример

Следующий фрагмент кода реализует ответ на выбор элемента меню Cascade.

HWND  hWndClient;

LRESULT   CALLBACK   WndProc (   HWND   hWnd,   UINT   uMsg,   WPARAM  wParam,   LPARAM  IParam   )

{ switch (   uMsg   )

{ case   WM_COMMAND   :

switch (   LOWORD(   wParam   )    )

{ case   IDM_CASCADE    :

CascadeWindows (   hWndClient,   HDITILE SKIPDISABLED, NULL,  0, NULL ) ; break;

CreateMDIWindow                               • Windows 98   • Windows 2000

Описание

Функция CreateMDIWindow создает дочернее окно MDI. Она должна использоваться в приложениях для создания дочерних окон вместо функций CreateWindow и CreateWindowEx. В качестве альтернативы может применяться сообщение WM_MDICREATE.

Синтаксис

HWND CreateMDIWindow( LPCTSTR IpszClassName, LPCTSTR IpszWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWndClient, HINSTANCE hlnstance, LPARAM IParam )

Параметры

IpszClassName

LPCTSTR; Указатель на завершаемую нулевым символом строку, которая задает имя класса дочернего окна MDI. Имя класса должно быть зарегистрировано путем вызова функции RegisterClass.

lpsz WindowName

LPCTSTR Указатель на завершаемую нулевым символом строку, которая задает имя окна.

dwStyle

DWORD: Стили дочернего окна MDI. Если MDI-клиент был создан со стилем MDIS_ALLCHILDSTYLES, может быть задан любой стиль из перечисленных в описании функции CreateWindow. В противном случае могут указываться только стили из табл. 27. 1 .

X

int: Исходная горизонтальная позиция дочернего окна в координатах клиента. Можно воспользоваться значением CW_USEDEFAULT, чтобы Windows присвоила параметру стандартное значение.

У

int: Исходная вертикальная позиция дочернего окна в координатах клиента. Можно воспользоваться значением CW_USEDEFAULT, чтобы Windows присвоила параметру стандартное значение.

n Width

int: Исходная ширина дочернего окна в координатах клиента. Можно воспользоваться значением CW_USEDEFAULT, чтобы Windows присвоила параметру стандартное значение.

nHeight

int: Исходная высота дочернего окна в координатах клиента. Можно воспользоваться значением CW_USEDEFAULT, чтобы Windows присвоила параметру стандартное значение.

hWndCliem

HWND: Указывает дескриптор клиентского окна, которое управляет данным дочерним окном.

hlnstance

HINSTANCE: Идентифицирует экземпляр приложения, который создает дочернее окно.

IParam

LPARAM: Значение, определяемое приложением. Оно передается дочернему окну в процессе обработки сообщения WM_CREATE. Когда дочернее окно принимает сообщение WM_CREATE, параметр IParam этого сообщения содержит указатель на структуру CREATESTRUCT. Первый член структуры, IpCreateParams, содержит указатель на структуру MDICRE-ATESTRUCT. Ее член IParam содержит 32-разрядное значение параметра IParam функции CreateMDIWindow. Описание структуры CREATESTRUCT приводится ниже, а описание структуры MDICREATESTRUCT — в разделе, посвященном сообщению WM_MDICREATE.

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

HWND: При успешном выполнении функция возвращает дескриптор нового дочернего окна. В противном случае возвращается NULL.

Включаемый файл

winuser.h

Связанные сообщения

WM MDICREATE

Описание структуры CREATESTRUCT

typedef   struct   tag CREATESTRUCT

{ LPVOID           IpCreateParams ;

HINSTANCE     hlnstance;

HMENU               hMenu;

HWND                 hwndParent;

int                  cy ;

int                  ex;

int                  y;

int                  x;

LONG                 style;

LPCTSTR          IpszName;

LPCTSTR          IpszClass; DWORD              

dwExStyle ; }    CREATESTRUCT ;

Члены

lpCreateParents

LPVOID: Указатель на данные, используемые для создания окна.  В Windows NT этот член хранит адрес значения типа SHORT (16 разрядов), которое указывает размер данных создания окна в байтах. После этого значения следуют собственно данные создания окна. При ссылке на данные, указываемые этим параметром, приложение должно использовать указатель, объявленный с атрибутом UNALIGNED. Дело в том, что указатель нельзя привести к типу DWORD.

hlnstance

HINSTANCE: Дескриптор экземпляра модуля, которому принадлежит новое окно.

hMenu

HMENU: Используемое новым окном меню.

hwndParent

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

cy

int: Высота нового окна в пикселях.

cx

int: Ширина нового окна в пикселях.

У

int: Координата у левого верхнего угла нового окна. Если новое окно является дочерним, координаты вычисляются относительно родительского окна. В противном случае координаты вычисляются относительно начала экрана.

X

int: Координата х левого верхнего угла нового окна. Если новое окно является дочерним, координаты вычисляются относительно родительского окна. В противном случае координаты вычисляются относительно начала экрана.

style

LONG: Стиль нового окна. Представляет собой комбинацию стилей, допустимых для использования в функции CreateWindow.

lpszName

LPCTSTR: Указатель на завершаемую нулевым символом строку с именем нового окна.

Ipsz Class

LPCTSTR: Указатель на завершаемую нулевым символом строку с именем класса нового окна

dwExStyle

DWORD: Расширенный стиль нового окна. Представляет собой комбинацию расширенных стилей окна, допустимых для использования в функции CreateWindowEx.

Пример

В следующем примере создается новое дочернее окно, когда пользователь выбирает элемент меню New (Создать). После выбора элемента меню Close активное дочернее окно закрывается.

См.    \local-sources\chap27\27-01. txt

DefFrameProc                                     * Windows 98   + Window* ?nnn

Описание

Процедура главного окна MDI передает все необработанные сообщения в функцию DefFrameProc. Эта функция позволяет Windows обеспечивать стандартное поведение MDI-приложения.

Синтаксис

LRESULT DefFrameProc( HWND hWndFrame, HWND hWndClient, UINT uMsg, WPARAM wParam, LPARAM IParam )

Параметры

h WndFrame

HWND: Дескриптор главного окна MDI.

hWndClient

HWND: Дескриптор клиентского окна MDI.

uMsg

UINT: Обрабатываемое сообщение.

wParam

WPARAM: Дополнительные данные, относящиеся к сообщению.

IParam

LPARAM: Дополнительные данные, относящиеся к сообщению.

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

LRESULT: Возвращаемое значение зависит от обрабатываемого сообщения. Процедура главного окна должна просто вернуть значение, генерируемое функцией DefFrameProc.

Включаемый файл

winuser.h

См. также

DefMDIChildProc, DefWindowProc

Пример    

Пример содержится в описании функции CreateMDIWindow.

DefMDIChildProc                                   • Windows 98   * Window* ?nnn

Описание

Процедура дочернего окна передает в эту функцию все необработанные сообщения. DefMDIChildProc позволяет Windows обеспечивать стандартное поведение MDI-приложения.

Синтаксис

LRESULT DefMDIChildProc( HWND hWndChild, UINT uMsg, WPARAM wParam, LPARAM IParam )

Параметры

hWndChild

HWND: Дескриптор дочернего окна MDI.

uMsg

UINT: Обрабатываемое сообщение.

wParam

WPARAM: Дополнительные данные, относящиеся к сообщению.

IParam

LPARAM: Дополнительные данные, относящиеся к сообщению.

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

LRESULT: Возвращаемое значение зависит от обрабатываемого сообщедая» Процедура дочернего окна должна просто вернуть значение, генерируемое функцией DefMDIChildProc.

Включаемый файл

winuser.h

См. также

DefFrameProc, DefWindowProc

Пример

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

LRESULT CALLBACK ChildWndProc (

HWND hWnd, 

OINT  uMsg, 

WPARAM  wParam,  

LFARAM  IParam   )

{ switch (   uMsg   )

{ default   : return (   DefMDIChildProc (   hWnd,   uMsg,   wParam,    IParam   )    ) ; } return (   OL   ) ; }

TileWindows                                        • Windows 98   • Windows 2000

Описание

Располагает все несвернутые дочерние окна мозаикой (без наложения). Эта функция подобна сообщению   WM_MDITILE  и  идентична  функции TileChildWindows за исключением того, что пользователь может указывать дескрипторы упорядочиваемых окон и ограничивать используемую область клиентского окна.

Синтаксис

WORD WINAPI TileWindows( HWND hWndParent, UINT wFlags, CONST RECT* IpWindowRect, UINT nWindowCount, CONST HWND* IpWndArray )

Параметры

HWndParent

HWND: Дескриптор родительского окна, дочерние окна которого будут упорядочиваться. Этот параметр обычно определяет дескриптор клиентского окна MD1. Если параметр равен NULL, подразумевается окно рабочего стола.

wFlags

UINT: Флаги режима упорядочения. Список допустимых значений представлен в табл. 27.4. Кроме того, можно задать флаги MDITILE_VERT1CAL и MDITILEJHORIZONTAL, перечисленные в табл. 27.5.

lpWindowRect

CONST RECT*: Указатель на структуру RECT, определяющую границы области, в которой располагаются дочерние окна. Если этот параметр равен NULL, подразумевается вся область родительского окна.

nWindowCount

UINT: Количество дескрипторов окон в массиве IpWndArray. Игнорируется, если параметр IpWndArray равен NULL.

lpWndArray

CONST HWND*: Массив дескрипторов дочерних окон. Если этот параметр равен NULL, упорядочению подлежат все дочерние окна родительского окна.

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

WORD: При успешном выполнении возвращается количество упорядочиваемых окон, а в противном случае — 0.

Включаемый файл

winuser.h

См. также

CascadeChildWindows, CascadeWindows, TileChildWindows

Связанные сообщения .     WMJVromLE

Пример

Следующий фрагмент кода выполняется в ответ на выбор пользователем пунктов меню Tile Horizontally и Tile Vertically.

См.    \local-sources\chap27\27-02.txt

TranslateMDISysAccel                           Windows 98   • Windows 2000

Описание

MDI -приложение должно обращаться к TranslateMDISysAccel в главном цикле сообщений перед вызовом обычной функции TranslateAccelerator. Это дает системе возможность интерпретировать стандартные комбинации клавиш сокращенного доступа до обработки сообщения приложением.

Синтаксис

BOOL TranslateMDISysAccel( HWND hWndClient, LPMSG IpMsg )

Параметры

hWndClient

HWND: Дескриптор клиентского окна MDI.

IpMsg

LPMSG: Указатель на структуру MSG, которая содержит текущее сообщение.

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

BOOL: Если сообщение функцией обработано, возвращается значение TRUE и дальнейшая обработка сообщения не требуется. Возврат FALSE означает, что сообщение не было обработано, поэтому должен продолжаться обычный процесс обработки.

Включаемый файл

winuser.h

См. также

TranslateAccelerator

Пример

Следующий код демонстрирует главный ЦИКЛ сообщений для обычного MDI-приложения.

while (   GetMessage(   Smsg,   NULL,   0,   0)    )

{if   (   hWndClient   &&   TranslateMDISys

Ao6»l<  Mfo4Cli«at,   CMO  )   1

continue ; TranslateMessage (   Smsg   ) DispatchMessage (   &msg   ) ; }

Сообщение WM_MDIACTIVATE             • Windows 98   • Windows 2000

Описание

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

Параметры

wParam

HWND: Дескриптор активизируемого дочернего окна MDI.

IParam

HWND: Если сообщение отправлено, данный параметр не используется и должен принимать значение 0. Если сообщение принято дочерним окном, этот параметр является дескриптором дочернего окна, которое становится неактивным.

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

LPRESULT: Если сообщение обработано дочерним окном, должен возвращаться 0.

Включаемый файл

winuser.h

Связанные сообщения WM_MDIGETACTIVE, WM_MDINEXT, WMJVCACIWATE

Сообщение WM_MDICASCADE              «• Windows 98   + Windows 2000

Описание

Отправляется клиентскому окну с целью изменения расположения всех несвернутых окон на каскадное (с наложением).

Параметры

wParam

UINT:  Единственное поддерживаемое этим параметром значение — TILE SKIPDISABLED. Оно предотвращает перемещение отключенных дочерних окон.

IParam

LPARAM: Не используется. Параметру присваивается значение 0.

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

BOOL: При успешном выполнении возвращается значение TRUE, а в противном случае — FALSE.

Включаемый файл

winuser.h

См. также

Cascade Windows

Связанные сообщения WM_MDIICONARRANGE, WM_MDITILE

Сообщение WM_MDICREATE                * Windows 98   + Windows 2000

Описание

Отправляется клиентскому окну с целью создания нового дочернего окна MDI.

Параметры

wParam

WPARAM: Не используется. Устанавливается в 0.

IParam

LPMDICREATESTRUCT: Указатель на структуру MDICREATESTRUCT. Эта структура используется клиентским окном при создании нового дочернего окна. Описание структуры приводится ниже.

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

HWND: При успешной обработке сообщения возвращается дескриптор нового дочернего окна. В противном случае возвращается NULL.

Включаемый файл

winuser.h

См. также

CreateMDIWindow

Связанные сообщения \VM_CREATE, WMJV1DIDESTROY

Описание структуры MDICREATESTRUCT

typedef   struct   tagMDICREATESTRUCT

{ LPCTSTR   szClass; LPCTSTR   szTitle; HANDLE      hOwner ;

int               х; int              у ; int              ex ; int              су; DWORD         style; LPARAM     IParam; }   MDICREATESTRUCT ,    *LPMDICREATESTROCT ;

Члены

sz Class

LPCTSTR: Указатель на завершаемую нулевым символом строку с именем класса дочернего окна MDI. Имя класса должно быть зарегистрировано предшествующим обращением к RegisterClass или RegisterClassEx.

szTitle

LPCTSTR: Указатель на завершаемую нулевым символом строку с заголовком дочернего окна. Windows отображает строку в заголовке окна.

HOwner

HANDLE: Дескриптор экземпляра приложения, создающего клиентское окно.

X

int: Исходная горизонтальная позиция дочернего окна в координатах клиента. Если члену присвоено значение CW_USEDEFAULT, для дочернего окна устанавливается стандартная горизонтальная позиция.

У

int: Исходная вертикальная позиция дочернего окна в координатах клиента. Если члену присвоено значение CW_USEDEFAULT, для дочернего окна устанавливается стандартная вертикальная позиция.

ex

int: Исходная ширина дочернего окна в единицах устройства. Если члену присвоено значение CW_USEDEFAULT, для дочернего окна устанавливается стандартная ширина.

су

int: Исходная высота дочернего окна в единицах устройства. Если члену присвоено значение CW_USEDEFAULT, для дочернего окна устанавливается стандартная высота.

style

DWORD: Стиль дочернего окна. Если при создании клиентского окна применялся стиль MDIS_ALLCHILDSTYLES, этот член может представлять собой любую комбинацию стилей, перечисленных при описании функции CreateWindow. В противном случае допускается одно или несколько значений из табл. 27.1.

IParam

IPARAM: Определяемое приложением 32-разрядное значение.

Сообщение WM_MDIDESTROY               • Windows 98   • Windows 2000

Описание

Отправляется клиентскому окну, чтобы закрыть указанное дочернее окно.

Параметры

wParam

HWND: Закрываемое дочернее окно.

IParam

LPARAM: He используется. Устанавливается в 0.

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

LRESULT: Всегда возвращается 0.

Включаемый файл

winuser.h

Связанные сообщения WM_MDICREATE

Сообщение WM_MDIGETACTIVE            *  Windows 98   * Windows 2000

Описание

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

Параметры

wParam

WPARAM: He используется. Устанавливается в 0.

lParam

LPBOOL: Необязательный указатель на переменную типа Boolean, которая принимает значение, указывающее на состояние дочернего окна. Значение TRUE означает, что окно развернуто. Если это значение не требуется, оно устанавливается в NULL.

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

HWND: При успешном завершении возвращается дескриптор дочернего окна, активного в данный момент. В противном случае возвращается NULL

Включаемый файл

winuser.h

См. также

GetWindowLong

Связанные сообщения \VM_MDIACT1VATE

Сообщение WM_MDIICONARRANGE      • Windows 98   • Windows 2000

Описание

Отправляется клиентскому окну, чтобы упорядочить расположение всех свернутых дочерних окон. Значки, представляющие свернутые окна, располагаются в нижней части клиентского окна.

Параметры

Сообщение параметров не имеет.

Возвращаемое значение Сообщение значений не возвращает.

Включаемый файл

winuser.h

См. также

ArrangelcqnicWindows

Связанные сообщения WM_MDICASCADE, WM_MDITILE, WM_MDIRESTORE

Сообщение WM_MDIMAXIMIZE            • Windows 98   • Windows 2000

Описание

Отправляется клиентскому окну для развертывания дочернего окна. Развернутое окно занимает всю область клиентского окна, текст заголовка присоединяется к тексту заголовка главного окна, кнопка Restore (восстановить) помещается в правую часть строки меню главного окна, а кнопка системного меню — в левую часть строки меню.

Параметры

wParam

HWND: Дескриптор развертываемого дочернего окна MD1.

IParam

LPARAM: Не используется. Устанавливается в 0.

Возвращаемое значение LPRESULT: Всегда возвращается 0.

Включаемый файл

winuser.h

Связанные сообщения WM_MDIRESTORE

Сообщение WM_MDINEXT                   • Windows 98   • Windows 2000

Описание

Отправляется клиентскому окну с целью активизации следующего или предыдущего дочернего окна.

Параметры

wParam

HWND: Дескриптор дочернего окна MDI. Активизируемое окно является следующим либо предыдущим по отношению к данному.

IParam

UINT: Если значение параметра равно 0, активным становится следующее окно, в противном случае — предыдущее.

Возвращаемое

значение Всегда возвращается 0.

Включаемый файл

winuser.h

Связанные сообщения WM_MDIACTIVATE, WM_MDIGETACTIVE

Сообщение WM_MDIREFRESHMENU       • Windows 98   • Windows 2000

Описание

Отправляется клиентскому окну для обновления строки меню главного окна MDI. Обычно это выполняется после того, как приложение внесет некоторые изменения в меню. После отправки данного сообщения приложение должно обращаться к функции DrawMenuBar для обновления (перерисовки) меню.

Параметры

Сообщение параметров не имеет.

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

HMENU: При успешной обработке сообщения возвращается дескриптор меню главного окна, а иначе — NULL.

Включаемый файл

winuser.h

См. также

DrawMenuBar

Связанные сообщения WM_MDISETMENU

Сообщение WM_MDIRESTORE              • Windows 98   «• Windows 2000

Описание

Отправляется клиентскому окну с целью восстановления исходного размера свернутого или развернутого дочернего окна.

Параметры

wParam

HWND: Восстанавливаемое дочернее окно.

IParam

LPARAM: Не используется. Устанавливается в 0.

Возвращаемое значение Всегда возвращается 0.

Включаемый файл

winuser.h

Связанные сообщения WM_MDIMAXIMIZE

Сообщение WM_MDISETMENU              • Windows 98   • Windows 2000

Описание

Отправляется клиентскому окну для связи окна приложения с другим меню. Возможна замена всей строки меню либо пункта, который динамически изменяется клиентским окном MDI.

Параметры wParam

HMENU: Дескриптор меню, которое заменяет строку меню главного окна. Если строка меню не заменяется полностью, параметр потребуется установить в NULL.

IParam

HMENU: Дескриптор меню, которое заменяет всплывающее меню главного окна. Всплывающее меню динамически изменяется клиентским окном. Если не выполняется замена меню, параметр следует установить в NULL.

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

HMENU: При успешной обработке сообщения возвращается дескриптор строки меню главного окна, а иначе — NULL.

Включаемый файл

winuser.h

См. также

DrawMenuBar

Связанные сообщения WM_MDIREFRESHMENU

Сообщение WM_MDITILE                      • Windows 98   • Windows 2000

Описание

Отправляется клиентскому окну для расположения всех несвернутых дочерних окон мозаикой.

Параметры

wParam

UINT: Флаг мозаичного расположения. Этот параметр может принимать одно из значений, перечисленных в табл. 27.5.

Таблица 27.5 Значения параметра WM_MDITILE

Значение

Описание

MDITILE_HORIZONTAL

Окна располагаются по ширине клиентского окна

MDITILE_SKIPDISABLED

Отключенные дочерние окна не затрагиваются

MDITILE_VERTICAL

Окна располагаются по высоте клиентского окна

lParam

LPARAM: Не используется. Устанавливается в 0.

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

BOOL: В случае успешной обработки сообщения возвращается TRUE, иначе — FALSE.

Включаемый файл

winuser.h

См. также

TileWindows

Связанные сообщения WM_MDICASCADE, WM_MDIICONARRANGE