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


Класс CMFCColorButton

CMFCColorButton и классы Класс CMFCColorBar используются совместно, чтобы реализовать управление палитры.

class CMFCColorButton : public CMFCButton

Члены

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

Имя

Описание

CMFCColorButton::CMFCColorButton

Создает новый объект CMFCColorButton.

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

Имя

Описание

CMFCColorButton::EnableAutomaticButton

Включает и блокирует "," автоматическая кнопку, которая располагается на обычный кнопками цвета. (Кнопка стандартной системы автоматическая на которую указывает Автоматически).

CMFCColorButton::EnableOtherButton

Включает и блокирует "другой" кнопку, которая располагается под обычный кнопками цвета. (Стандартная система "другой" указывает More Colors…).

CMFCColorButton::GetAutomaticColor

Извлекает текущий автоцвет.

CMFCColorButton::GetColor

Получает цвет кнопки.

CMFCColorButton::SetColor

Устанавливает цвет кнопки.

CMFCColorButton::SetColorName

Задает имя цвета.

CMFCColorButton::SetColumnsNumber

Задает число столбцов в диалоговом окне палитра цветов.

CMFCColorButton::SetDocumentColors

Определяет список цветов документ- определенной, отображаемых в диалоговом окне палитра цветов.

CMFCColorButton::SetPalette

Задает палитру стандартных цветов отображения.

CMFCColorButton::SizeToContent

Изменяет размер элемента управления "Кнопка", в зависимости от его текст и размер образа.

Защищенные методы

Имя

Описание

CMFCColorButton::IsDrawXPTheme

Указывает, отображается ли текущая кнопку цвета в визуальном стиле Windows XP.

CMFCColorButton::OnDraw

Вызываемый платформой для отображения образа кнопки.

CMFCColorButton::OnDrawBorder

Вызываемый платформой, чтобы отобразить границы кнопки.

CMFCColorButton::OnDrawFocusRect

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

CMFCColorButton::OnShowColorPopup

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

CMFCColorButton::RebuildPalette

Инициализирует элемент данных, защищенный m_pPalette в палитре или заданной по умолчанию палитре системы.

CMFCColorButton::UpdateColor

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

Элементы данных

Имя

Описание

m_bAltColorDlg

Логическое значение. Если TRUE, платформа отображает диалоговое окно цвета CMFCColorDialog, если еще одну кнопку нажата или если FALSE, то диалоговое окно цвет системы. Значение по умолчанию — TRUE. Дополнительные сведения см. в разделе CMFCColorButton::EnableOtherButton.

m_bAutoSetFocus

Логическое значение. Если TRUE платформа устанавливает фокус в меню, когда меню отображается цвета или если FALSE, не меняет фокус. Значение по умолчанию — TRUE.

CMFCColorButton::m_bEnabledInCustomizeMode

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

m_Color

Значение COLORREF. Содержит текущий выбранный цвет.

m_ColorAutomatic

Значение COLORREF. Содержит текущий выбранный цвет по умолчанию.

m_Colors

CArray значений COLORREF. Содержит в данный момент доступные цвета.

m_lstDocColors

CList значений COLORREF. Содержит цвета текущего документа.

m_nColumns

Параметр типа Integer (целое число). Содержит количество столбцов для отображения в сетке цветов в меню выбора цвета.

m_pPalette

Указатель на CPalette. Содержит цвета, доступные в текущем меню выбора цвета.

m_pPopup

Указатель на объект Класс CMFCColorPopupMenu. Меню выбора цвета, который отображается при нажатии кнопки цвета.

m_strAutoColorText

Строка. Метка "автоматической" кнопки в меню выбора цвета.

m_strDocColorsText

Строка. Метка кнопки в меню выбора цвета, указывающее цвет рисования.

m_strOtherText

Строка. Метка "другой" в меню выбора цвета.

Заметки

По умолчанию класс CMFCColorButton действовать как кнопка, которая открывает диалоговое окно палитра цветов. Диалоговое окно "Палитра цветов" содержит массив небольших кнопок и "другой" кнопка, которая показывает выбор настраиваемых цветов. (Стандартная система "другой" указывает More Colors…). Когда пользователь выделяет новый цвет, объект CMFCColorButton отражает изменения и отображает выбранный цвет.

Создайте элемент управления "Кнопка" цвета или непосредственно в коде или с помощью средства ClassWizard и шаблона диалогового окна. Если создается элемент управления "Кнопка" цвета напрямую, то добавьте переменную CMFCColorButton в приложение, затем вызовите конструктор и методы CreateCMFCColorButton объект. При использовании ClassWizard, добавьте переменную CButton в приложение, а затем измените тип переменной из CButton к CMFCColorButton.

Диалоговое окно "Палитра цветов" (Класс CMFCColorBar) показано методом CMFCColorButton::OnShowColorPopup, когда платформа вызывает функцию обработчика событий OnLButtonDown. CMFCColorButton::OnShowColorPopup метод можно переопределить, чтобы поддерживать выделение пользовательского цвета.

Объект CMFCColorButton уведомляет его родительским элементом, что цвет изменяет его путем отправки уведомления WM_COMMAND | BN_CLICKED. Родительский элемент использует метод CMFCColorButton::GetColor чтобы получить текущий цвет.

Пример

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

    CMFCColorButton m_wndTextColor;


...


    m_wndTextColor.EnableAutomaticButton (_T("Default"), afxGlobalData.clrBtnText);
    m_wndTextColor.EnableOtherButton (_T("Other..."));
    m_wndTextColor.SetColor ((COLORREF)-1);
    m_wndTextColor.SetColorName((COLORREF)-1, "Default Color");
    m_wndTextColor.SetColumnsNumber(3);

Требования

заголовок: afxcolorbutton.h

См. также

Ссылки

Диаграмма иерархии

Класс CMFCButton

Класс CMFCColorBar

CMFCColorButton::OnShowColorPopup

COLORREF

Класс CPalette

Класс CArray

Класс CList

CString

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

Классы MFC