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


Класс CToolBar

Панели элементов управления, имеющие строку растровых кнопок и необязательные разделители.

Синтаксис

class CToolBar : public CControlBar

Участники

Открытые конструкторы

Имя Описание
CToolBar::CToolBar Формирует объект CToolBar.

Открытые методы

Имя Описание
CToolBar::CommandToIndex Возвращает индекс кнопки с заданным идентификатором команды.
CToolBar::Create Создает панель инструментов Windows и присоединяет ее к объекту CToolBar .
CToolBar::CreateEx CToolBar Создает объект с дополнительными стилями для внедренного CToolBarCtrl объекта.
CToolBar::GetButtonInfo Извлекает идентификатор, стиль и номер изображения кнопки.
CToolBar::GetButtonStyle Извлекает стиль кнопки.
CToolBar::GetButtonText Извлекает текст, который будет отображаться на кнопке.
CToolBar::GetItemID Возвращает идентификатор команды кнопки или разделителя по указанному индексу.
CToolBar::GetItemRect Извлекает прямоугольник отображения для элемента по указанному индексу.
CToolBar::GetToolBarCtrl Разрешает прямой доступ к базовому общему элементу управления.
CToolBar::LoadBitmap Загружает растровое изображение, содержащее изображения растровой кнопки.
CToolBar::LoadToolBar Загружает ресурс панели инструментов, созданный с помощью редактора ресурсов.
CToolBar::SetBitmap Задает битовое изображение.
CToolBar::SetButtonInfo Задает идентификатор, стиль и номер изображения кнопки.
CToolBar::SetButtons Задает стили кнопок и индекс изображений кнопок в растровом рисунке.
CToolBar::SetButtonStyle Задает стиль кнопки.
CToolBar::SetButtonText Задает текст, который будет отображаться на кнопке.
CToolBar::SetHeight Задает высоту панели инструментов.
CToolBar::SetSizes Задает размеры кнопок и их растровых изображений.

Замечания

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

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

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 для проектирования программного обеспечения. Любое дополнительное пространство между размерами изображения и кнопкой используется для формирования границы вокруг изображения.

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

Предупреждение

CToolBar поддерживает растровые изображения с не более чем 16 цветами. При загрузке изображения в редактор панели инструментов Visual Studio автоматически преобразует изображение в 16-цветную растровую карту при необходимости и выводит предупреждение, если изображение было преобразовано. Если вы используете изображение с более чем 16 цветами (с помощью внешнего редактора для редактирования изображения), приложение может вести себя неожиданно.

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

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

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

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

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

Дополнительные сведения об использовании CToolBarсм. в статье О реализации панели инструментов MFC и техническом примечание 31: панели управления.

Иерархия наследования

CObject

CCmdTarget

CWnd

CControlBar

CToolBar

Требования

Заголовок.afxext.h

CToolBar::CommandToIndex

Эта функция-член возвращает индекс первой кнопки панели инструментов, начиная с позиции 0, идентификатор команды которой соответствует nIDFind.

int CommandToIndex(UINT nIDFind) const;

Параметры

nIDFind
Идентификатор команды кнопки панели инструментов.

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

Индекс кнопки или -1, если кнопка не имеет заданного идентификатора команды.

CToolBar::Create

Эта функция-член создает панель инструментов Windows (дочернее окно) и связывает ее с CToolBar объектом.

virtual BOOL Create(
    CWnd* pParentWnd,
    DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_TOP,
    UINT nID = AFX_IDW_TOOLBAR);

Параметры

pParentWnd
Указатель на окно, которое является родительским элементом панели инструментов.

dwStyle
Стиль панели инструментов. Поддерживаются дополнительные стили панели инструментов:

  • CBRS_TOP Панель управления находится в верхней части окна кадра.

  • CBRS_BOTTOM Панель управления находится в нижней части окна кадра.

  • CBRS_NOALIGN Панель управления не перемещается при изменении размера родительского элемента.

  • CBRS_TOOLTIPS Панель управления отображает подсказки инструментов.

  • CBRS_SIZE_DYNAMIC Панель управления является динамической.

  • CBRS_SIZE_FIXED Панель управления исправлена.

  • CBRS_FLOATING Панель управления плавает.

  • CBRS_FLYBY В строке состояния отображаются сведения о кнопке.

  • CBRS_HIDE_INPLACE Панель управления не отображается пользователю.

nID
Идентификатор дочернего окна панели инструментов.

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

Имеет ненулевое значение в случае успешного выполнения, иначе — 0.

Замечания

Она также задает высоту панели инструментов значением по умолчанию.

Пример

// This code fragment is taken from CMainFrame::OnCreate
// CMainFrame is derived from CMDIFrameWnd.

//This example creates a dockable toolbar.
if (!m_wndToolBar.Create(this) ||
   !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
   TRACE0("Failed to create toolbar\n");
   return -1;      // fail to create
}

//Make the toolbar dockable
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndToolBar);

CToolBar::CreateEx

Вызовите эту функцию, чтобы создать панель инструментов Windows (дочернее окно) и связать ее с CToolBar объектом.

virtual BOOL CreateEx(
    CWnd* pParentWnd,
    DWORD dwCtrlStyle = TBSTYLE_FLAT,
    DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_ALIGN_TOP,
    CRect rcBorders = CRect(
    0,
    0,
    0,
    0),
    UINT nID = AFX_IDW_TOOLBAR);

Параметры

pParentWnd
Указатель на окно, которое является родительским элементом панели инструментов.

dwCtrlStyle
Дополнительные стили для создания внедренного CToolBarCtrl объекта. По умолчанию, этому параметру присваивается значение TBSTYLE_FLAT. Полный список стилей панели инструментов см. в разделе dwStyle.

dwStyle
Стиль панели инструментов. Список соответствующих стилей см . в разделе "Стили элементов управления и кнопки" в пакете SDK для Windows.

rcBorders
Объект CRect , определяющий ширину границ окна панели инструментов. По умолчанию эти границы имеют значение 0,0 0,0, что приводит к окну панели инструментов без границ.

nID
Идентификатор дочернего окна панели инструментов.

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

Имеет ненулевое значение в случае успешного выполнения, иначе — 0.

Замечания

Она также задает высоту панели инструментов значением по умолчанию.

Используйте CreateExвместо Createэтого, если во время создания внедренного элемента управления панели инструментов необходимо присутствовать определенные стили. Например, задайте dwCtrlStyle для TBSTYLE_FLAT | TBSTYLE_TRANSPARENT создания панели инструментов, которая напоминает интернет-Обозреватель 4 панели инструментов.

Пример

// This example demonstrates CToolBar::CreateEx by creating a 
// toolbar as part of a child frame window. It also calls the 
// LoadToolbar and EnableDocking functions
int CChildFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
   if (CMDIChildWnd::OnCreate(lpCreateStruct) == -1)
      return -1;

   if (!m_wndMyToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
      | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
      !m_wndMyToolBar.LoadToolBar(IDR_MYTOOLBAR))
   {
      TRACE0("Failed to create toolbar\n");
      return -1;      // fail to create
   }

   m_wndMyToolBar.EnableDocking(CBRS_ALIGN_ANY);
   EnableDocking(CBRS_ALIGN_ANY);
   DockControlBar(&m_wndMyToolBar);

   return 0;
}

CToolBar::CToolBar

Эта функция-член создает CToolBar объект и задает размеры по умолчанию.

CToolBar();

Замечания

Вызовите функцию-член, Create чтобы создать окно панели инструментов.

CToolBar::GetButtonInfo

Эта функция-член извлекает идентификатор элемента управления, стиль и индекс изображения кнопки панели инструментов или разделителя в расположении, указанном в этом расположении nIndex.

void GetButtonInfo(
    int nIndex,
    UINT& nID,
    UINT& nStyle,
    int& iImage) const;

Параметры

nIndex
Индекс кнопки панели инструментов или разделителя, сведения о которых необходимо извлечь.

nID
Ссылка на UINT, для которой задан идентификатор команды кнопки.

nStyle
Ссылка на UINT, которая задана в стиле кнопки.

iImage
Ссылка на целое число, заданное индексом изображения кнопки в растровом рисунке.

Замечания

Эти значения назначаются переменным, на которые nIDссылается , nStyleи iImage. Индекс изображения — это позиция изображения в растровом рисунке, который содержит изображения для всех кнопок панели инструментов. Первое изображение находится в позиции 0.

Если nIndex задает разделитель, iImage задается ширина разделителя в пикселях.

CToolBar::GetButtonStyle

Вызовите эту функцию-член, чтобы получить стиль кнопки или разделителя на панели инструментов.

UINT GetButtonStyle(int nIndex) const;

Параметры

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

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

Стиль кнопки или разделителя, заданный .nIndex

Замечания

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

CToolBar::GetButtonText

Вызовите эту функцию-член, чтобы получить текст, отображаемый на кнопке.

CString GetButtonText(int nIndex) const;

void GetButtonText(
    int nIndex,
    CString& rString) const;

Параметры

nIndex
Индекс извлекаемого текста.

rString
Ссылка на CString объект, содержащий полученный текст.

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

CString Объект, содержащий текст кнопки.

Замечания

Вторая форма этой функции-члена заполняет CString объект строковым текстом.

CToolBar::GetItemID

Эта функция-член возвращает идентификатор команды кнопки или разделителя, указанного в nIndex.

UINT GetItemID(int nIndex) const;

Параметры

nIndex
Индекс элемента, идентификатор которого требуется получить.

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

Идентификатор команды кнопки или разделителя, заданный.nIndex

Замечания

Возвращаемые ID_SEPARATORразделители.

CToolBar::GetItemRect

Эта функция-член заполняет RECT структуру, адрес которой содержится lpRect в координатах кнопки или разделителя, заданных .nIndex

virtual void GetItemRect(
    int nIndex,
    LPRECT lpRect) const;

Параметры

nIndex
Индекс элемента (кнопка или разделитель), координаты прямоугольника которого необходимо извлечь.

lpRect
RECT Адрес структуры, содержащей координаты элемента.

Замечания

Координаты находятся в пикселях относительно левого верхнего угла панели инструментов.

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

Пример

Пример см. в примере CToolBar::SetSizes.

CToolBar::GetToolBarCtrl

Эта функция-член позволяет напрямую обращаться к базовому общему элементу управления.

CToolBarCtrl& GetToolBarCtrl() const;

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

Ссылка на объект CToolBarCtrl.

Замечания

Используйте GetToolBarCtrl для использования функциональных возможностей общего элемента управления панели инструментов Windows, а также для использования поддержки CToolBarCtrl для настройки панели инструментов.

Дополнительные сведения об использовании общих элементов управления см. в статье "Элементы управления и общие элементы управления " в пакете SDK для Windows.

Пример

// This code fragment is taken from CMainFrame::OnCreate
// CMainFrame is derived from CMDIFrameWnd.

//This example shows how to add text to toolbar buttons.
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE
   | CBRS_TOP) || !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
   TRACE0("Failed to create toolbar\n");
   return -1;      // fail to create
}

//Show text on toolbar buttons.
VERIFY(m_wndToolBar.SetButtonText(0, _T("New")));
VERIFY(m_wndToolBar.SetButtonText(1, _T("Open")));
VERIFY(m_wndToolBar.SetButtonText(2, _T("Save")));
VERIFY(m_wndToolBar.SetButtonText(4, _T("Cut")));
VERIFY(m_wndToolBar.SetButtonText(5, _T("Copy")));
VERIFY(m_wndToolBar.SetButtonText(6, _T("Paste")));
VERIFY(m_wndToolBar.SetButtonText(8, _T("Print")));
VERIFY(m_wndToolBar.SetButtonText(9, _T("About")));

CRect temp;
m_wndToolBar.GetItemRect(0, &temp);
m_wndToolBar.GetToolBarCtrl().SetButtonSize(CSize(temp.Width(),
   temp.Height()));

CToolBar::LoadBitmap

Вызовите эту функцию-член, чтобы загрузить растровое изображение, lpszResourceName указанное или nIDResource.

BOOL LoadBitmap(LPCTSTR lpszResourceName);
BOOL LoadBitmap(UINT nIDResource);

Параметры

lpszResourceName
Указатель на имя ресурса загруженной растровой карты.

nIDResource
Идентификатор ресурса загруженного растрового изображения.

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

Имеет ненулевое значение в случае успешного выполнения, иначе — 0.

Замечания

Растровое изображение должно содержать одно изображение для каждой кнопки панели инструментов. Если изображения не являются стандартным размером (16 пикселей шириной и 15 пикселей высокой), вызовите SetSizes для задания размеров кнопки и их изображений.

Предупреждение

CToolBar поддерживает растровые изображения с не более чем 16 цветами. При загрузке изображения в редактор панели инструментов Visual Studio автоматически преобразует изображение в 16-цветную растровую карту при необходимости и выводит предупреждение, если изображение было преобразовано. Если вы используете изображение с более чем 16 цветами (с помощью внешнего редактора для редактирования изображения), приложение может вести себя неожиданно.

CToolBar::LoadToolBar

Вызовите эту функцию-член, чтобы загрузить панель инструментов, указанную lpszResourceName или nIDResource.

BOOL LoadToolBar(LPCTSTR lpszResourceName);
BOOL LoadToolBar(UINT nIDResource);

Параметры

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

nIDResource
Идентификатор ресурса загружаемой панели инструментов.

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

Имеет ненулевое значение в случае успешного выполнения, иначе — 0.

Замечания

Дополнительные сведения о создании ресурса панели инструментов см . в редакторе инструментов.

Пример

Пример см. в примере CToolBar::CreateEx.

CToolBar::SetBitmap

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

BOOL SetBitmap(HBITMAP hbmImageWell);

Параметры

hbmImageWell
Дескриптор растрового изображения, связанного с панелью инструментов.

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

Имеет ненулевое значение в случае успешного выполнения, иначе — 0.

Замечания

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

CToolBar::SetButtonInfo

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

void SetButtonInfo(
    int nIndex,
    UINT nID,
    UINT nStyle,
    int iImage);

Параметры

nIndex
Отсчитываемый от нуля индекс кнопки или разделителя, для которого необходимо задать сведения.

nID
Значение, для которого задан идентификатор команды кнопки.

nStyle
Новый стиль кнопки. Поддерживаются следующие стили кнопок:

  • TBBS_BUTTON Стандартный pushbutton (по умолчанию)

  • TBBS_SEPARATOR Разделитель

  • TBBS_CHECKBOXКнопка "Авто проверка-поле"

  • TBBS_GROUP Помечает начало группы кнопок

  • TBBS_CHECKGROUPПомечает начало группы кнопок проверка поля

  • TBBS_DROPDOWN Создает кнопку раскрывающегося списка.

  • TBBS_AUTOSIZE Ширина кнопки вычисляется на основе текста кнопки, а не размера изображения.

  • TBBS_NOPREFIX Текст кнопки не будет связан с префиксом акселератора.

iImage
Новый индекс изображения кнопки в растровом рисунке.

Замечания

Для разделителей, имеющих стиль TBBS_SEPARATOR, эта функция задает ширину разделителя в пикселях значением, хранящимся в iImage.

Примечание.

Вы также можете задать состояния кнопки с помощью nStyle параметра. Однако, так как состояния кнопки управляются обработчиком ON_UPDATE_COMMAND_UI , любое заданное состояние SetButtonInfo будет потеряно во время следующей обработки простоя. Дополнительные сведения см. в статье об обновлении объектов пользовательского интерфейса и TN031.

Сведения о растровых изображениях и кнопках см. в разделе " CToolBar Обзор" и CToolBar::LoadBitmap"Обзор".

CToolBar::SetButtons

Эта функция-член задает идентификатор команды каждой кнопки панели инструментов в значение, указанное соответствующим элементом массива lpIDArray.

BOOL SetButtons(
    const UINT* lpIDArray,
    int nIDCount);

Параметры

lpIDArray
Указатель на массив идентификаторов команд. Он может иметь значение NULL, чтобы выделить пустые кнопки.

nIDCount
Число элементов в массиве, на которое указывает lpIDArray.

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

Имеет ненулевое значение в случае успешного выполнения, иначе — 0.

Замечания

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

Не нужно учитывать разделители в растровом изображении, так как эта функция не назначает индексы изображений для разделителей. Если на панели инструментов есть кнопки на позициях 0, 1 и 3 и разделитель в позиции 2, изображения на позициях 0, 1 и 2 в растровом рисунке назначаются кнопкам в позициях 0, 1 и 3 соответственно.

Если lpIDArray значение NULL, эта функция выделяет пространство для количества элементов, указанных в параметре nIDCount. Используется SetButtonInfo для задания атрибутов каждого элемента.

CToolBar::SetButtonStyle

Вызовите эту функцию-член, чтобы задать стиль кнопки или разделителя или группировать кнопки.

void SetButtonStyle(
    int nIndex,
    UINT nStyle);

Параметры

nIndex
Индекс кнопки или разделителя, сведения которого необходимо задать.

nStyle
Стиль кнопки. Поддерживаются следующие стили кнопок:

  • TBBS_BUTTON Стандартный pushbutton (по умолчанию)

  • TBBS_SEPARATOR Разделитель

  • TBBS_CHECKBOXКнопка "Авто проверка-поле"

  • TBBS_GROUP Помечает начало группы кнопок

  • TBBS_CHECKGROUPПомечает начало группы кнопок проверка поля

  • TBBS_DROPDOWN Создание кнопки раскрывающегося списка

  • TBBS_AUTOSIZE Ширина кнопки вычисляется на основе текста кнопки, а не размера изображения.

  • TBBS_NOPREFIX Текст кнопки не будет связан с префиксом акселератора.

Замечания

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

Перед вызовом SetButtonStyleGetButtonStyle вызовите функцию-член, чтобы получить стиль кнопки или разделителя.

Примечание.

Вы также можете задать состояния кнопки с помощью nStyle параметра. Однако, так как состояния кнопки управляются обработчиком ON_UPDATE_COMMAND_UI , любое заданное состояние SetButtonStyle будет потеряно во время следующей обработки простоя. Дополнительные сведения см. в статье об обновлении объектов пользовательского интерфейса и TN031.

CToolBar::SetButtonText

Вызовите эту функцию, чтобы задать текст на кнопке.

BOOL SetButtonText(
    int nIndex,
    LPCTSTR lpszText);

Параметры

nIndex
Индекс кнопки, текст которой должен быть задан.

lpszText
Указывает на текст, заданный на кнопке.

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

Имеет ненулевое значение в случае успешного выполнения, иначе — 0.

Пример

Пример см. в примере CToolBar::GetToolBarCtrl.

CToolBar::SetHeight

Эта функция-член задает высоту панели инструментов значением в пикселях, указанным в cyHeight.

void SetHeight(int cyHeight);

Параметры

cyHeight
Высота в пикселях панели инструментов.

Замечания

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

Если эта функция не вызывается, платформа использует размер кнопки для определения высоты панели инструментов.

CToolBar::SetSizes

Вызовите эту функцию-член, чтобы задать для кнопок панели инструментов размер в пикселях, указанных в sizeButton.

void SetSizes(
    SIZE sizeButton,
    SIZE sizeImage);

Параметры

sizeButton
Размер в пикселях каждой кнопки.

sizeImage
Размер в пикселях каждого изображения.

Замечания

Параметр sizeImage должен содержать размер изображения в пикселях на растровом рисунке панели инструментов. Размер должен sizeButton быть достаточно, чтобы сохранить изображение плюс 7 пикселей дополнительно ширины и 6 пикселей дополнительно высоты. Эта функция также задает высоту панели инструментов для соответствия кнопок.

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

Пример

// This code fragment is taken from CMainFrame::OnCreate
// CMainFrame is derived from CMDIFrameWnd

// This example shows how to add text to toolbar buttons.
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE 
   | CBRS_TOP) || !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
   TRACE0("Failed to create toolbar\n");
   return -1;      // fail to create
}

//Show text on toolbar buttons.
VERIFY(m_wndToolBar.SetButtonText(0, _T("New")));
VERIFY(m_wndToolBar.SetButtonText(1, _T("Open")));
VERIFY(m_wndToolBar.SetButtonText(2, _T("Save")));
VERIFY(m_wndToolBar.SetButtonText(4, _T("Cut")));
VERIFY(m_wndToolBar.SetButtonText(5, _T("Copy")));
VERIFY(m_wndToolBar.SetButtonText(6, _T("Paste")));
VERIFY(m_wndToolBar.SetButtonText(8, _T("Print")));
VERIFY(m_wndToolBar.SetButtonText(9, _T("About")));

CRect temp;
m_wndToolBar.GetItemRect(0,&temp);
m_wndToolBar.SetSizes(CSize(temp.Width(),
   temp.Height()),CSize(16,15));

См. также

Пример MFC CTRLBARS
Пример MFC DLGCBR32
Пример MFC DOCKTOOL
CControlBar Класса
Диаграмма иерархии
CToolBarCtrl Класса