В процедуру окна для предопределенных элемента управления окна класса button выполняет стандартную обработку всех сообщений, которые не обрабатывает процедура элемента управления button. Когда кнопка управления процедура возвращает значение FALSE для любого сообщения, предопределенные Оконная процедура проверяет сообщения и выполняет действия по умолчанию, перечисленные в следующей таблице.
| Сообщение | Действия по умолчанию |
|---|---|
| BM_CLICK | Отправляет кнопку WM_LBUTTONDOWN и WM_LBUTTONUP сообщение и отправляет сообщение уведомления BN_CLICKED родительского окна. |
| BM_GETCHECK | Возвращает состояние проверки элемента управления Button. |
| BM_GETIMAGE | Возвращает дескриптор точечный рисунок или значок, связанный с кнопкой или NULL, если кнопка не содержит растрового изображения или значка. |
| BM_GETSTATE | Возвращает текущее состояние флажка, push состояние и состояние фокуса кнопки. |
| BM_SETCHECK | Устанавливает состояние проверки для всех стилей переключатели и флажки. Если параметр wParam больше нуля для переключателей, кнопка получает стиль WS_TABSTOP. |
| BM_SETIMAGE | Связывает указанный дескриптор растрового изображения или значка с кнопкой и возвращает дескриптор для предыдущих растрового изображения или значка. |
| BM_SETSTATE | Определяет push состояние кнопки. Владельцем кнопок WM_DRAWITEM сообщение отправляется родительского окна, если изменилось состояние кнопки. |
| BM_SETSTYLE | Задает стиль кнопок. Если младшее слово параметра lParam имеет значение TRUE, кнопка перерисовывается. |
| WM_CHAR | Проверяет флажок или флажок автоматически, когда пользователь нажимает «плюс» (+) или равно (=) ключей. Снятии флажка флажок или флажок автоматически, когда пользователь нажимает «минус» (-) ключ. |
| WM_ENABLE | Рисует кнопку. |
| WM_ERASEBKGND | Удаление фона для рисуемого владельцем кнопок. Фон других кнопок стираются в рамках WM_PAINT и WM_ENABLE обработка. |
| WM_GETDLGCODE | Возвращает значения, указывающие тип ввода, обрабатываются в порядке кнопку по умолчанию, как показано в следующей таблице. |
| Стиль кнопки | Возвращение | |
|---|---|---|
| BS_AUTOCHECKBOX | ||
| DLGC_WANTCHARS | DLGC_BUTTON | ||
| BS_AUTORADIOBUTTON | ||
| DLGC_RADIOBUTTON | ||
| BS_CHECKBOX | ||
| DLGC_WANTCHARS | DLGC_BUTTON | ||
| BS_DEFPUSHBUTTON | ||
| DLGC_DEFPUSHBUTTON | ||
| BS_GROUPBOX | ||
| DLGC_STATIC | ||
| BS_PUSHBUTTON | ||
| DLGC_UNDEFPUSHBUTTON | ||
| BS_RADIOBUTTON | ||
| DLGC_RADIOBUTTON | ||
| WM_GETFONT | Возвращает дескриптор текущего шрифта. |
| WM_KEYDOWN | Нажимает кнопку, если пользователь нажимает клавишу пробел. |
| WM_KEYUP | Освобождает захват мыши для всех случаев, за исключением клавиши tab. |
| WM_KILLFOCUS | Удаляет прямоугольник фокуса с помощью кнопки. Для кнопок и клавиш по умолчанию является недействительным прямоугольник фокуса. Если кнопка имеет захват мыши, выпущена захвата, не кнопки, и любого государства, push снимается. |
| WM_LBUTTONDBLCLK | Отправляет сообщение уведомления BN_DBLCLK родительского окна для рисуемого владельцем кнопок и переключателей. Для других кнопок двойной щелчок обрабатывается как сообщение WM_LBUTTONDOWN. |
| WM_LBUTTONDOWN | Выделяет кнопку если позиция курсора мыши в пределах клиентской области кнопки. |
| WM_LBUTTONUP | Освобождает захват мыши, если кнопка имеет захват мыши. |
| WM_MOUSEMOVE | Выполняет то же действие, как WM_LBUTTONDOWN, если кнопка имеет захват мыши. В противном случае невозможно выполнение никаких действий. |
| WM_NCCREATE | Поворачивает любую кнопку, BS_OWNERDRAW в BS_PUSHBUTTON кнопку. |
| WM_NCHITTEST | Возвращает HTTRANSPARENT, если элемент управления button является рамки группы. |
| WM_PAINT | Рисует кнопку в соответствии с его стиль и текущее состояние. |
| WM_SETFOCUS | Рисует сфокусированный прямоугольник на кнопку получить фокус. Для переключателей и автоматические переключатели родительское окно отправляется сообщение уведомления BN_CLICKED. |
| WM_SETFONT | Устанавливает новый шрифт и при необходимости обновляет окно. |
| WM_SETTEXT | Устанавливает текст кнопки. За рамки группы сообщение рисует поверх существующего текста перед перекраску поле группы с новым текстом. |
| WM_SYSKEYUP | Освобождает захват мыши для всех случаев, за исключением клавиши tab. |
Предопределенные Оконная процедура проходит все другие сообщения в функцию DefWindowProc для обработки по умолчанию.