Класс 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++ предоставляет два метода для создания панели инструментов. Чтобы создать ресурс панели инструментов с помощью редактора ресурсов, выполните следующие действия.
Создание ресурса панели инструментов.
CToolBar
Создайте объект.Create
Вызовите функцию (илиCreateEx
), чтобы создать панель инструментов Windows и подключить ее к объектуCToolBar
.Вызов
LoadToolBar
для загрузки ресурса панели инструментов.
В противном случае выполните следующие действия.
CToolBar
Создайте объект.Create
Вызовите функцию (илиCreateEx
), чтобы создать панель инструментов Windows и подключить ее к объектуCToolBar
.Вызов
LoadBitmap
для загрузки растрового изображения, содержащего изображения кнопки панели инструментов.Вызов,
SetButtons
чтобы задать стиль кнопки и связать каждую кнопку с изображением в растровом рисунке.
Все изображения кнопки на панели инструментов взяты из одной растровой карты, которая должна содержать один образ для каждой кнопки. Все изображения должны иметь одинаковый размер; Значение по умолчанию — 16 пикселей в ширину и 15 пикселей. Изображения должны быть рядом с растровым изображением.
Функция SetButtons
принимает указатель на массив идентификаторов элементов управления и целое число, указывающее количество элементов в массиве. Функция задает идентификатор каждой кнопки для значения соответствующего элемента массива и назначает каждую кнопку индекс изображения, который указывает положение изображения кнопки в растровом изображении. Если элемент массива имеет значение ID_SEPARATOR
, индекс изображения не назначается.
Порядок изображений в растровом изображении обычно является порядком, в котором они рисуются на экране, но можно использовать SetButtonInfo
функцию для изменения связи между порядком изображения и порядком рисования.
Все кнопки на панели инструментов имеют одинаковый размер. Значение по умолчанию — 24 x 22 пикселя в соответствии с рекомендациями по интерфейсу Windows для проектирования программного обеспечения. Любое дополнительное пространство между размерами изображения и кнопкой используется для формирования границы вокруг изображения.
Каждая кнопка имеет один образ. На этом изображении создаются различные состояния и стили кнопки (нажимаемые, вверх, вниз, отключенные, отключенные и неопределенные). Хотя растровые изображения могут быть любым цветом, вы можете добиться наилучших результатов с изображениями в черном и оттенках серого.
Предупреждение
CToolBar
поддерживает растровые изображения с не более чем 16 цветами. При загрузке изображения в редактор панели инструментов Visual Studio автоматически преобразует изображение в 16-цветную растровую карту при необходимости и выводит предупреждение, если изображение было преобразовано. Если вы используете изображение с более чем 16 цветами (с помощью внешнего редактора для редактирования изображения), приложение может вести себя неожиданно.
Кнопки панели инструментов имитируют pushbutton по умолчанию. Однако кнопки панели инструментов также могут имитировать кнопки флажка или переключатели. Кнопки флажка имеют три состояния: флажки, очистки и неопределенного состояния. Переключатели имеют только два состояния: проверено и снято.
Чтобы задать отдельный стиль кнопки или разделителя без указания на массив, вызов GetButtonStyle
для получения стиля, а затем вызов SetButtonStyle
вместо SetButtons
него. SetButtonStyle
является наиболее полезным, если вы хотите изменить стиль кнопки во время выполнения.
Чтобы назначить текст, отображаемый на кнопке, вызовите GetButtonText
для получения текста, который будет отображаться на кнопке, а затем вызовите SetButtonText
для задания текста.
Чтобы создать кнопку флажка, назначьте его стиль TBBS_CHECKBOX
или используйте CCmdUI
функцию-член объекта SetCheck
в обработчике ON_UPDATE_COMMAND_UI
. Вызов SetCheck
превращает pushbutton в кнопку флажка. Передайте SetCheck
аргумент 0 для отмены, 1 для проверки или 2 для неопределенного значения.
Чтобы создать переключатель, вызовите CCmdUI
функцию-член объекта SetRadio
из обработчика ON_UPDATE_COMMAND_UI
. Передайте SetRadio
аргумент 0 для снятой или ненулевой проверки. Для обеспечения взаимоисключающего поведения радиогруппы необходимо иметь ON_UPDATE_COMMAND_UI
обработчики для всех кнопок в группе.
Дополнительные сведения об использовании CToolBar
см. в статье О реализации панели инструментов MFC и техническом примечание 31: панели управления.
Иерархия наследования
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
создания панели инструментов, напоминающей панели инструментов Internet Explorer 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
Текст кнопки не будет связан с префиксом акселератора.
Замечания
Стиль кнопки определяет, как отображается кнопка и как она реагирует на входные данные пользователя.
Перед вызовом SetButtonStyle
GetButtonStyle
вызовите функцию-член, чтобы получить стиль кнопки или разделителя.
Примечание.
Вы также можете задать состояния кнопки с помощью 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
Класс