CToolBar

Объекты класса CToolBar являются панели элементов управления, которые имеют ряд кнопок активизирующими и дополнительные разделители. Кнопки может действовать как кнопки, чек бокс кнопок или переключателей. CToolBar объекты являются обычно встраиваемых членов фреймового окна объектов, производных от класса CFrameWnd или CMDIFrameWnd.

CToolBar::GetToolBarCtrl, новой для MFC 4.0, функция-член позволяет воспользоваться преимуществами поддержки общего управления Windows для настройки панели инструментов и дополнительные функции. Функции-члены CToolBar дают вам большую часть функциональных возможностей общие элементы управления Windows; Однако при вызове GetToolBarCtrl, вы можете дать панелей инструментов даже больше из характеристики панели инструментов Windows 95. При вызове GetToolBarCtrl, он возвращает ссылку на объект CToolBarCtrl . Смотрите CToolBarCtrl для получения дополнительных сведений о разработке инструментов, используя общие элементы управления Windows. Более общие сведения о стандартных элементов управления, содержатся в разделе Общие элементы управления в справочнике программиста SDK Windows 95.

Visual C++ предоставляет два метода для создания панели инструментов. Создание ресурса панели инструментов с помощью редактора ресурсов, выполните следующие действия:

  1. Создание ресурса панели инструментов.

  2. Создайте объект CToolBar.

  3. Необходимо вызвать функцию Create (или CreateEx) для создания панели инструментов Windows и прикрепить его к объекту CToolBar.

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

В противном случае выполните следующие действия:

  1. Создайте объект CToolBar.

  2. Необходимо вызвать функцию Create (или CreateEx) для создания панели инструментов Windows и прикрепить его к объекту CToolBar.

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

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

Все изображения кнопок в панели инструментов, взяты из одного растрового изображения, который должен содержать одно изображение для каждой кнопки. Все изображения должны быть одинакового размера; значение по умолчанию — 16 пикселов в ширину и 15 пикселей в высоту. Изображения должны быть бок о бок друг с другом, в битовой карте.

Функция SetButtons принимает указатель на массив идентификаторов элементов управления и целое число, указывающее количество элементов в массиве. Функция устанавливает Идентификатор каждой кнопки значение соответствующего элемента массива и присваивает каждой кнопки индекс изображения, которое определяет положение изображения кнопки в битовой карте. Если элемент массива имеет значение ID_SEPARATOR, присваивается индекс не изображения.

Порядок изображений в битовой карте обычно является порядок, в котором они отображаются на экране, но можно использовать функцию SetButtonInfo для изменения отношения между порядок изображения и порядок отображения.

Все кнопки в панели инструментов имеют тот же размер. Значение по умолчанию — 24 x 22 пикселей, в соответствии с Руководящими принципами интерфейс Windows для проектирования программного обеспечения. Любое дополнительное пространство между изображения и кнопку измерения используется для создания рамки вокруг изображения.

Каждая кнопка имеет одно изображение. Различные кнопки Штатами и стилей (прессованные, вверх, вниз, инвалидам, инвалидам вниз и неопределенный) генерируются из этого одного изображения. Хотя растровые изображения могут быть любого цвета, можно добиться наилучших результатов с изображениями в черном и оттенки серого.

Кнопки панели инструментов имитировать кнопок по умолчанию. Однако кнопки панели инструментов также можно имитировать флажок кнопки и переключатели. Чек бокс кнопки имеют три государства: checked, очищаются и неопределенным. Радио кнопки имеют только два государства: проверить и очистить.

Чтобы задать отдельные кнопки или Разделитель стилей не указывает на массив, звоните GetButtonStyle для извлечения стиля и затем вызвать SetButtonStyle вместо того, чтобы SetButtons. SetButtonStyle особенно полезен, когда требуется изменить стиль кнопки во время выполнения.

Чтобы задать текст для отображения на кнопке, звоните GetButtonText для извлечения текста на кнопке и затем вызвать SetButtonText для задания текста.

Для создания кнопки чек бокс, назначить стиль TBBS_CHECKBOX или использовать функцию-член объекта CCmdUI SetCheck в обработчике ON_UPDATE_COMMAND_UI . Вызов SetCheck превращается в кнопку флажок кнопки. Передать SetCheck аргумент 0 для не отмечено, 1 для проверенных или 2 для неопределенного.

Для создания переключателя, вызовите функцию-член объекта CCmdUI SetRadio из обработчика ON_UPDATE_COMMAND_UI . Передайте аргумент 0 SetRadio для снят или ненулевое значение для проверки. С тем чтобы предоставить взаимоисключающих поведение группы переключателей, необходимо иметь обработчики ON_UPDATE_COMMAND_UI для всех кнопок в группе.

Для получения дополнительных сведений об использовании CToolBar, см. статью панели инструментов в Visual C++ программист руководстве и техническое примечание 31, панелей элементов управления.

# include lt;afxext.h>

Члены классаБазовый класс | Иерархическая схема

Образцы  Образца CTRLBARS MFC | MFC образца DLGCBR32 | MFC Образец DOCKTOOL ПОКАЗАНА

См. также CToolBarCtrl, CControlBar, CToolBar::Create, CToolBar::LoadBitmap, CToolBar::SetButtons, CCmdUI::SetCheck, CCmdUI::SetRadio

Index