Поделиться через


Функция 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