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


Класс CMFCRibbonComboBox

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

Синтаксис

class CMFCRibbonComboBox : public CMFCRibbonEdit

Участники

Конструкторы

Имя Описание
CMFCRibbonComboBox::CMFCRibbonComboBox Создает объект CMFCRibbonComboBox.

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

Имя Описание
CMFCRibbonComboBox::AddItem Добавляет уникальный элемент в поле списка.
CMFCRibbonComboBox::D eleteItem Удаляет указанный элемент из списка.
CMFCRibbonComboBox::EnableDropDownListResize Указывает, может ли поле списка изменять размер при раскрывающемся списке.
CMFCRibbonComboBox::FindItem Возвращает индекс первого элемента в поле списка, который соответствует указанной строке.
CMFCRibbonComboBox::GetCount Возвращает количество элементов в поле списка.
CMFCRibbonComboBox::GetCurSel Возвращает индекс выбранного элемента в списке.
CMFCRibbonComboBox::GetDropDownHeight Возвращает высоту поля списка при удалении поля списка.
CMFCRibbonComboBox::GetIntermediateSize Возвращает размер поля со списком, отображаемый в промежуточном режиме.
CMFCRibbonComboBox::GetItem Возвращает строку, связанную с элементом по указанному индексу в поле списка.
CMFCRibbonComboBox::GetItemData Возвращает данные, связанные с элементом по указанному индексу в поле списка.
CMFCRibbonComboBox::HasEditBox Указывает, содержит ли элемент управления поле редактирования.
CMFCRibbonComboBox::IsResizeDropDownList Указывает, можно ли изменить размер поля списка.
CMFCRibbonComboBox::OnSelectItem Вызывается платформой, когда пользователь выбирает элемент в списке.
CMFCRibbonComboBox::RemoveAllItems Удаляет все элементы из списка и очищает поле редактирования.
CMFCRibbonComboBox::SelectItem Выбирает элемент в списке.
CMFCRibbonComboBox::SetDropDownHeight Задает высоту поля списка при его удалении.

Замечания

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

Пример

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

// Create a simple combo box with two entries:
// The first parameter is the id of the combo box.
// The third parameter is the width of the combo box in pixels.
// The fourth parameter is the display label of the combo box.
// The fifth parameter is the index of the small image of the combo box.
CMFCRibbonComboBox *pComboSimple = new CMFCRibbonComboBox(-1, FALSE, -1, 0, -1);

// Add two items to the combo box and select the first item in the list:
pComboSimple->AddItem(_T("Hi!"));
pComboSimple->AddItem(_T("Hello!"));
pComboSimple->SelectItem(0);

// Add combo button to "Favorites" panel:
// CMFCRibbonPanel* pPanelFavorites
pPanelFavorites->Add(pComboSimple);

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

CObject

CMFCRibbonBaseElement

CMFCRibbonButton

CMFCRibbonEdit

CMFCRibbonComboBox

Требования

Заголовок: afxribboncombobox.h

CMFCRibbonComboBox::AddItem

Добавляет уникальный элемент в поле списка.

virtual INT_PTR AddItem(
    LPCTSTR lpszItem,
    DWORD_PTR dwData=0);

Параметры

lpszItem
[in] Строка добавляемого элемента.

dwData
[in] Данные, связанные с добавляемой элементом.

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

Отсчитываемый от нуля индекс добавленного элемента.

CMFCRibbonComboBox::CMFCRibbonComboBox

Формирует объект CMFCRibbonComboBox.

public:
CMFCRibbonComboBox(
    UINT nID,
    BOOL bHasEditBox=TRUE,
    Int nWidth=-1,
    LPCTSTR lpszLabel=NULL,
    Int nImage=-1);

protected:
CMFCRibbonComboBox();

Параметры

Nid
[in] Идентификатор поля со списком.

bHasEditBox
[in] ЗНАЧЕНИЕ TRUE, если требуется поле редактирования в элементе управления; Значение FALSE в противном случае.

nWidth
[in] Ширина поля со списком в пикселях; или -1 для ширины по умолчанию.

lpszLabel
[in] Отображаемая метка поля со списком.

nImage
[in] Небольшой индекс изображения поля со списком.

Замечания

Ширина по умолчанию — 108 пикселей.

CMFCRibbonComboBox::D eleteItem

Удаляет указанный элемент из списка.

BOOL DeleteItem(int iIndex);
BOOL DeleteItem(DWORD_PTR dwData);

BOOL DeleteItem(LPCTSTR lpszText);

Параметры

iIndex
[in] Отсчитываемый от нуля индекс элемента.

dwData
[in] Данные, связанные с элементом, которые необходимо удалить.

lpszText
[in] Строка элемента, который необходимо удалить. При наличии нескольких элементов с одной строкой первый элемент удаляется.

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

ЗНАЧЕНИЕ TRUE, если указанный элемент был удален; в противном случае — ЗНАЧЕНИЕ FALSE.

Замечания

CMFCRibbonComboBox::EnableDropDownListResize

Указывает, может ли поле списка изменять размер при раскрывающемся списке.

void EnableDropDownListResize(BOOL bEnable=FALSE);

Параметры

bEnable
[in] ЗНАЧЕНИЕ TRUE для включения изменения размера; ЗНАЧЕНИЕ FALSE для отключения изменения размера.

Замечания

Если изменение размера включено, поле списка изменит размер, чтобы он соответствовал отображаемым элементам.

CMFCRibbonComboBox::FindItem

Возвращает индекс первого элемента в поле списка, который соответствует указанной строке.

int FindItem(LPCTSTR lpszText) const;

Параметры

lpszText
[in] Строка элемента в поле списка.

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

Отсчитываемый от нуля индекс элемента; или -1, если элемент не найден.

Замечания

CMFCRibbonComboBox::GetCount

Возвращает количество элементов в поле списка.

INT_PTR GetCount() const;

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

Количество элементов в поле списка или 0, если поле списка не содержит элементов.

Замечания

CMFCRibbonComboBox::GetCurSel

Возвращает индекс выбранного элемента в списке.

int GetCurSel() const;

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

Отсчитываемый от нуля индекс выбранного элемента в списке; или -1, если элемент не выбран.

CMFCRibbonComboBox::GetDropDownHeight

Возвращает высоту поля списка при удалении поля списка.

int GetDropDownHeight();

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

Высота в пикселях списка.

Замечания

CMFCRibbonComboBox::GetIntermediateSize

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

virtual CSize GetIntermediateSize(CDC* pDC);

Параметры

pDC
[in] Указатель на контекст устройства для поля со списком.

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

Размер поля со списком.

Замечания

Возвращаемый размер зависит от размера поля со списком при отображении небольших изображений.

CMFCRibbonComboBox::GetItem

Возвращает строку, связанную с элементом по указанному индексу в поле списка.

LPCTSTR GetItem(int iIndex) const;

Параметры

iIndex
[in] Отсчитываемый от нуля индекс элемента в поле списка.

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

Указатель на строку, связанную с элементом; в противном случае значение NULL, если параметр индекса недопустим, или если параметр индекса равен -1, и в поле со списком отсутствует элемент.

Замечания

CMFCRibbonComboBox::GetItemData

Возвращает данные, связанные с элементом по указанному индексу в поле списка.

DWORD_PTR GetItemData(int iIndex) const;

Параметры

iIndex
[in] Отсчитываемый от нуля индекс элемента в поле списка.

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

Данные, связанные с элементом; или 0, если элемент не существует, или если параметр индекса равен -1, и в поле списка отсутствует выбранный элемент.

CMFCRibbonComboBox::HasEditBox

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

BOOL HasEditBox() const;

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

ЗНАЧЕНИЕ TRUE, если элемент управления содержит поле редактирования; в противном случае — ЗНАЧЕНИЕ FALSE.

Замечания

CMFCRibbonComboBox::IsResizeDropDownList

Указывает, можно ли изменить размер поля списка.

BOOL IsResizeDropDownList() const;

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

ЗНАЧЕНИЕ TRUE, если поле списка может быть изменено; в противном случае ЗНАЧЕНИЕ FALSE. CMFCRibbonComboBox::EnableDropDownListResize

Замечания

Вы можете включить изменение размера списка с помощью метода CMFCRibbonComboBox::EnableDropDownListResize .

CMFCRibbonComboBox::OnSelectItem

Вызывается платформой, когда пользователь выбирает элемент в списке.

virtual void OnSelectItem(int nItem);

Параметры

nItem
[in] Индекс выбранного элемента.

Замечания

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

CMFCRibbonComboBox::RemoveAllItems

Удаляет все элементы из списка и очищает поле редактирования.

void RemoveAllItems();

Замечания

CMFCRibbonComboBox::SelectItem

Выбирает элемент в списке.

BOOL SelectItem(int iIndex);
BOOL SelectItem(DWORD_PTR dwData);

BOOL SelectItem(LPCTSTR lpszText);

Параметры

iIndex
[in] Отсчитываемый от нуля индекс элемента в поле списка.

dwData
[in] Данные, связанные с элементом в списке.

lpszText
[in] Строка элемента в поле списка.

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

ЗНАЧЕНИЕ TRUE, если метод выполнен успешно; в противном случае ЗНАЧЕНИЕ FALSE.

Замечания

CMFCRibbonComboBox::SetDropDownHeight

Задает высоту поля списка при его удалении.

void SetDropDownHeight(int nHeight);

Параметры

nHeight
[in] Высота в пикселях списка.

Замечания

Высота по умолчанию составляет 150 пикселей.

См. также

Диаграмма иерархии
Классы
Класс CMFCRibbonEdit