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


Стили кнопок

В этом разделе описаны типы и стиль кнопки.

Типы кнопок

В следующей таблице перечислены типы кнопок. При необходимости можно выбрать один из следующих вариантов: Если не указать тип кнопки, по умолчанию используется BS_PUSHBUTTON.

Тип

Описание

BS_3STATE

Создает флажок с тремя состояниями: BST_CHECKED, BST_INDETERMINATE и BST_UNCHECKED. При щелчке по флажку окну-владельцу отправляется уведомление BN_CLICKED, но состояние кнопки не флажка. По умолчанию связанный текст отображается справа от флажка. Для отображения текста слева от флажка используйте стиль BS_LEFTTEXT или BS_RIGHTBUTTON.

BS_AUTO3STATE

Создает флажок с тремя состояниями: BST_CHECKED, BST_INDETERMINATE и BST_UNCHECKED. При щелчке по флажку окну-владельцу отправляется уведомление BN_CLICKED, а состояние флажка изменяется. Кнопка состояний цикл по BST_CHECKED, BST_INDETERMINATE и BST_UNCHECKED. По умолчанию связанный текст отображается справа от флажка. Для отображения текста слева от флажка используйте стиль BS_LEFTTEXT или BS_RIGHTBUTTON.

BS_AUTOCHECKBOX

Создает флажок с двумя состояниями: BST_CHECKED и BST_UNCHECKED. При щелчке по флажку окну-владельцу отправляется уведомление BN_CLICKED, а состояние флажка изменяется. По умолчанию связанный текст отображается справа от флажка. Для отображения текста слева от флажка используйте стиль BS_LEFTTEXT или BS_RIGHTBUTTON.

BS_AUTORADIOBUTTON

Создает переключатель с двумя состояниями: BST_CHECKED и BST_UNCHECKED. Переключатели обычно используются в группах, при этом каждая команда, более одного параметра проверенного одновременно. При щелчке по переключателю окну-владельцу отправляется уведомление BN_CLICKED, нажатому переключателю присваивается состояние BST_CHECKED, а всем остальным переключателям в группе присваивается состояние BST_UNCHECKED. По умолчанию связанный текст отображается справа от переключателя. Для отображения текста слева от переключателя используйте стиль BS_LEFTTEXT или BS_RIGHTBUTTON.

BS_CHECKBOX

Создает флажок с двумя состояниями: BST_CHECKED и BST_UNCHECKED. При щелчке по флажку окну-владельцу отправляется уведомление BN_CLICKED, но состояние кнопки не флажка. По умолчанию связанный текст отображается справа от флажка. Для отображения текста слева от флажка используйте стиль BS_LEFTTEXT или BS_RIGHTBUTTON.

BS_COMMANDLINK

Создает кнопку Command Link. Кнопка Command Link — это командная кнопка, используемая только в Windows Vista, которая отображает зеленую стрелку слева от основного текста и примечание под основным текстом. Кроме того, задайте текст примечания с помощью CButton::SetNote.

BS_DEFCOMMANDLINK

Создает кнопку Command Link. Кнопка Command Link — это командная кнопка, используемая только в Windows Vista, которая отображает зеленую стрелку слева от основного текста и примечание под основным текстом. Кроме того, задайте текст примечания с помощью CButton::SetNote. Если кнопка — в диалоговом окне, нажатие сочетания клавиш ВВОД отправляет уведомление BN_CLICKED в диалоговое окно, даже если кнопка не имеет фокуса.

BS_DEFPUSHBUTTON

Создает командную кнопку с толстой черной границей. Если кнопка — в диалоговом окне, нажатие сочетания клавиш ВВОД отправляет уведомление BN_CLICKED в диалоговое окно, даже если кнопка не имеет фокуса.

BS_DEFSPLITBUTTON

Создает разворачивающуюся кнопку. Разворачивающаяся кнопка — это командная кнопка, используемая только в Windows Vista, которая содержит кнопку рядом с стрелкой раскрывающегося списка. При нажатии кнопки, команда выполняется по умолчанию. Если щелкнуть стрелку раскрывающегося списка, дополнительных меню команд. Если кнопка разделения — в диалоговом окне, нажатие сочетания клавиш ВВОД отправляет уведомление BN_CLICKED в диалоговое окно, даже если кнопка не имеет фокуса.

BS_GROUPBOX

Создает прямоугольник, в котором можно группировать другие кнопки. Текст, связанный с этим стилем, отображается в левом верхнем углу прямоугольника.

BS_OWNERDRAW

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

BS_PUSHBUTTON

Создает командную кнопку, которая, будучи нажатой пользователем, отправляет окну-владельцу уведомление BN_CLICKED.

BS_RADIOBUTTON

Создает переключатель с двумя состояниями: BST_CHECKED и BST_UNCHECKED. Переключатели обычно используются в группах, при этом каждая команда, более одного параметра проверенного одновременно. При щелчке по переключателю окну-владельцу отправляется уведомление BN_CLICKED, но состояние переключателей в группе не изменяется автоматически. По умолчанию связанный текст отображается справа от переключателя. Для отображения текста слева от переключателя используйте стиль BS_LEFTTEXT или BS_RIGHTBUTTON.

BS_SPLITBUTTON

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

BS_USERBUTTON

Является устаревшим, но при условии, что для обеспечения совместимости с 16-битными версиями Windows. Приложения Win32 должны вместо этого использовать BS_OWNERDRAW.

Стили переключателя и флажка

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

Стиль

Описание

BS_LEFTTEXT

В сочетании со стилем переключателя или флажка текст отображается в левой части переключателя или флажка.

BS_RIGHTBUTTON

В сочетании со стилем переключателя или флажка текст отображается в левой части переключателя или флажка. Этот стиль идентичен стилю BS_LEFTTEXT.

BS_PUSHLIKE

Выполняет флажок или переключатель символьных и поступить как кнопка команд. Кнопка отображается отображаемая нажатой при ее состояние BST_CHECKED, и отображаемая нажатой отображаться при ее состояние BST_INDETERMINATE, и выпущенной после ее состояние BST_UNCHECKED.

Стили выравнивания текста

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

Стиль

Описание

BS_LEFT

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

BS_RIGHT

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

BS_CENTER

Центрирует текст по горизонтали в прямоугольнике кнопки.

BS_TOP

Размещает текст в верхней части прямоугольника кнопки.

BS_BOTTOM

Размещает текст в нижней части прямоугольника кнопки.

BS_VCENTER

Центрирует текст по вертикали в прямоугольнике кнопки.

Параметры содержимого кнопок

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

Стиль

Описание

BS_BITMAP

Указывает, что кнопка отображает точечный рисунок.

BS_ICON

Указывает, что кнопка отображает значок.

BS_TEXT

Указывает, что кнопка отображает текст.

Другие параметры

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

Стиль

Описание

BS_FLAT

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

BS_MULTILINE

Создать текст кнопки на несколько строк, если текстовая строка слишком длинна для соответствия на отдельную линии в прямоугольнике кнопки.

BS_NOTIFY

Позволяет кнопке отправлять уведомления BN_DBLCLK, BN_KILLFOCUS и BN_SETFOCUS своему родительскому окну. Обратите внимание, что кнопки отправляют уведомление BN_CLICKED независимо от того, указан ли данный стиль.

См. также

Ссылки

CButton::Create

Стили кнопок

BN_CLICKED Notification

Другие ресурсы

Стили, используемые MFC