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


Класс CMFCColorPickerCtrl

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

Синтаксис

class CMFCColorPickerCtrl : public CButton

Участники

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

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

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

Имя Описание
CMFCColorPickerCtrl::GetColor Извлекает цвет, который выбирает пользователь.
CMFCColorPickerCtrl::GetHLS Извлекает значения цвета, яркости и насыщенности цвета, выбранного пользователем.
CMFCColorPickerCtrl::GetHue Извлекает компонент оттенка цвета, выбранного пользователем.
CMFCColorPickerCtrl::GetLuminance Извлекает компонент света цвета, выбранного пользователем.
CMFCColorPickerCtrl::GetSaturation Извлекает компонент насыщенности цвета, выбранного пользователем.
CMFCColorPickerCtrl::SelectCellHexagon Задает текущий цвет, определенный указанными компонентами цвета RGB или шестнадцатеричной ячейкой.
CMFCColorPickerCtrl::SetColor Задает текущий цвет заданному значению цвета RGB.
CMFCColorPickerCtrl::SetHLS Задает текущий цвет указанным значением цвета HLS.
CMFCColorPickerCtrl::SetHue Изменяет компонент оттенка выбранного цвета.
CMFCColorPickerCtrl::SetLuminance Изменяет компонент света выбранного цвета.
CMFCColorPickerCtrl::SetLuminanceBarWidth Задает ширину панели света в элементе управления выбора цветов.
CMFCColorPickerCtrl::SetOriginalColor Задает начальный выбранный цвет.
CMFCColorPickerCtrl::SetPalette Задает текущую цветовую палитру.
CMFCColorPickerCtrl::SetSaturation Изменяет компонент насыщенности выбранного цвета.
CMFCColorPickerCtrl::SetType Задает тип элемента управления выбора цвета для отображения.

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

Имя Описание
CMFCColorPickerCtrl::DrawCursor Вызывается платформой перед отображением курсора, указывающего на выбранный цвет.

Замечания

Стандартные цвета выбираются из шестнадцатеугольной цветовой палитры, а настраиваемые цвета выбираются в панели света, где цвета задаются с помощью нотации красного или зеленого или синего нотации или оттенка/ насыщенности или яркости.

На следующем рисунке показано несколько CMFCColorPickerCtrl объектов.

Диалоговое окно CMFCColorPickerCtrl.

Поддерживает CMFCColorPickerCtrl две пары стилей. HEX_GREYSCALE Стили HEX подходят для стандартного выбора цвета. LUMINANCE Стили PICKER подходят для выбора пользовательского цвета.

Выполните следующие действия, чтобы включить элемент управления в диалоговое CMFCColorPickerCtrl окно:

  1. Если вы используете ClassWizard, вставьте новый элемент управления кнопки в шаблон диалогового CButton окна (так как CMFCColorPickerCtrl класс наследуется от класса).

  2. Вставьте переменную-член, связанную с новым элементом управления кнопкой, в класс диалогового окна. Затем измените тип переменной на CButton CMFCColorPickerCtrl.

  3. WM_INITDIALOG Вставьте обработчик сообщений для класса диалогового окна. В обработчике задайте тип, палитру и начальный выбранный цвет CMFCColorPickerCtrl элемента управления.

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

CObject
CCmdTarget
CWnd
CButton
CMFCColorPickerCtrl

Требования

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

CMFCColorPickerCtrl::CMFCColorPickerCtrl

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

CMFCColorPickerCtrl();

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

Замечания

CMFCColorPickerCtrl::DrawCursor

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

virtual void DrawCursor(
    CDC* pDC,
    const CRect& rect);

Параметры

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

rect
[in] Задает прямоугольную область вокруг выбранного цвета.

Замечания

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

CMFCColorPickerCtrl::GetColor

Извлекает цвет, который выбирает пользователь.

COLORREF GetColor() const;

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

Значение RGB выбранного цвета.

Замечания

CMFCColorPickerCtrl::GetHLS

Извлекает значения цвета, яркости и насыщенности цвета, выбранного пользователем.

void GetHLS(
    double* hue,
    double* luminance,
    double* saturation);

Параметры

hue
[out] Указатель на переменную типа double, которая получает сведения об оттенок.

luminance
[out] Указатель на переменную типа double, которая получает сведения о светимости.

saturation
[out] Указатель на переменную типа double, которая получает сведения о насыщенности.

Замечания

CMFCColorPickerCtrl::GetHue

Извлекает компонент оттенка цвета, выбранного пользователем.

double GetHue() const;

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

Компонент оттенка выбранного цвета.

Замечания

CMFCColorPickerCtrl::GetLuminance

Извлекает компонент света цвета, выбранного пользователем.

double GetLuminance() const;

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

Компонент света выбранного цвета.

Замечания

CMFCColorPickerCtrl::GetSaturation

Извлекает значение насыщенности цвета, выбранного пользователем.

double GetSaturation() const;

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

Компонент насыщенности выбранного цвета.

Замечания

CMFCColorPickerCtrl::SelectCellHexagon

Задает текущий цвет, определенный указанными компонентами цвета RGB или шестнадцатеричной ячейкой.

void SelectCellHexagon(
    BYTE R,
    BYTE G,
    BYTE B);

BOOL SelectCellHexagon(
    int x,
    int y);

Параметры

R
[in] Красный цвет компонента.

G
[in] Зеленый цвет компонента.

B
[in] Компонент синего цвета.

x
[in] Координата x курсора, указывающая на шестнадцатеричную ячейку.

y
[in] Координата y курсора, указывающая на шестнадцатеричную ячейку.

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

Вторая перегрузка этого метода всегда возвращает ЗНАЧЕНИЕ FALSE.

Замечания

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

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

CMFCColorPickerCtrl::SetColor

Задает текущий цвет заданному значению цвета RGB.

void SetColor(COLORREF Color);

Параметры

Color
[in] Значение цвета RGB.

Замечания

CMFCColorPickerCtrl::SetHLS

Задает текущий цвет указанным значением цвета HLS.

void SetHLS(
    double hue,
    double luminance,
    double saturation,
    BOOL bInvalidate=TRUE);

Параметры

hue
[in] Значение оттенка.

luminance
[in] Значение света.

saturation
[in] Значение насыщенности.

bInvalidate
[in] TRUE принудительное обновление окна до нового цвета; FALSEв противном случае . Значение по умолчанию — TRUE.

Замечания

CMFCColorPickerCtrl::SetHue

Изменяет цвет выбранного в данный момент цвета.

void SetHue(double Hue);

Параметры

Hue
[in] Значение оттенка.

Замечания

CMFCColorPickerCtrl::SetLuminance

Изменяет светимость выбранного цвета в данный момент.

void SetLuminance(double Luminance);

Параметры

Luminance
[in] Значение света.

Замечания

CMFCColorPickerCtrl::SetLuminanceBarWidth

Задает ширину панели света в элементе управления выбора цветов.

void SetLuminanceBarWidth(int w);

Параметры

w
[in] Ширина полосы света, измеряемой в пикселях.

Замечания

Используйте этот метод для изменения размера панели света, которая находится на вкладке "Настраиваемый " элемента управления выбора цветов. Параметр w задает новую ширину панели света. Значение ширины игнорируется, если оно превышает три четверти ширины клиентской области.

CMFCColorPickerCtrl::SetOriginalColor

Задает начальный выбранный цвет.

void SetOriginalColor(COLORREF ref);

Параметры

ref
[in] Значение цвета RGB.

Замечания

Вызовите этот метод при инициализации элемента управления выбора цвета.

CMFCColorPickerCtrl::SetPalette

Задает текущую цветовую палитру.

void SetPalette(CPalette* pPalette);

Параметры

pPalette
[in] Указатель на цветовую палитру.

Замечания

Цветовая палитра определяет массив цветов, представленный в элементе управления выбора цветов.

CMFCColorPickerCtrl::SetSaturation

Изменяет насыщенность выбранного цвета.

void SetSaturation(double Saturation);

Параметры

Saturation
[in] Значение насыщенности.

Замечания

CMFCColorPickerCtrl::SetType

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

void SetType(COLORTYPE colorType);

Параметры

colorType
[in] Тип элемента управления выбора цвета.

Типы определяются CMFCColorPickerCtrl::COLORTYPE перечислением. Возможные типы: LUMINANCE, PICKERHEX и HEX_GREYSCALE. Значение по умолчанию — PICKER.

Замечания

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

См. также

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