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

Предоставляет обработку по умолчанию для любых сообщений окна, которые процедура окна (MDI) не обрабатывается. Все сообщения окна, которые не обрабатываются явно процедурой окна, должны передаваться функции DefFrameProc, а не функции DefWindowProc.

Синтаксис

LRESULT DefFrameProcA(
  [in] HWND   hWnd,
  [in] HWND   hWndMDIClient,
  [in] UINT   uMsg,
  [in] WPARAM wParam,
  [in] LPARAM lParam
);

Параметры

[in] hWnd

Тип: HWND

Дескриптор окна фрейма MDI.

[in] hWndMDIClient

Тип: HWND

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

[in] uMsg

Тип: UINT

Обработанное сообщение.

[in] wParam

Тип: WPARAM

Дополнительные сведения о сообщении.

[in] lParam

Тип: LPARAM

Дополнительные сведения о сообщении.

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

Тип: LRESULT

Возвращаемое значение указывает результат обработки сообщений и зависит от сообщения. Если параметр hWndMDIClient NULL, возвращаемое значение совпадает с функцией DefWindowProc.

Замечания

Если процедура окна приложения не обрабатывает сообщение, обычно оно передает сообщение в функцию DefWindowProc для обработки сообщения. Приложения MDI используют функции DefFrameProc и DefMDIChildProc вместо DefWindowProc для обработки сообщений по умолчанию. Все сообщения, которые приложение обычно передает DefWindowProc (например, неклиентные сообщения и сообщение WM_SETTEXT), должны передаваться в DefFrameProc. Функция DefFrameProc также обрабатывает следующие сообщения.

Сообщение Ответ
WM_COMMAND Активирует дочернее окно MDI, выбранное пользователем. Это сообщение отправляется, когда пользователь выбирает дочернее окно MDI в меню окна окна окна MDI. Идентификатор окна, сопровождающий это сообщение, определяет дочернее окно MDI для активации.
WM_MENUCHAR Открывает меню окна активного дочернего окна MDI, когда пользователь нажимает сочетание клавиш ALT+ (минус).
WM_SETFOCUS Передает фокус клавиатуры в окно клиента MDI, которое, в свою очередь, передает его активному дочернему окну MDI.
WM_SIZE Изменяет размер окна клиента MDI в соответствии с клиентской областью нового окна фрейма. Если процедура окна кадра размеров окна клиента MDI в другой размер, она не должна передавать сообщение в функцию DefWindowProc.
 

Заметка

Заголовок winuser.h определяет DefFrameProc как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка winuser.h (включая Windows.h)
библиотеки User32.lib
DLL User32.dll

См. также

концептуальные

DefMDIChildProc

DefWindowProc

нескольких интерфейсов документов

Справочник

WM_SETTEXT