Класс 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::D rawCursor | Вызывается платформой перед отображением курсора, указывающего на выбранный цвет. |
Замечания
Стандартные цвета выбираются из шестнадцатеугольной цветовой палитры, а настраиваемые цвета выбираются из панели света, где цвета задаются с помощью нотации красного или зеленого или синего нотации или оттенка/сатуатуры/нотации света.
На следующем рисунке показано несколько CMFCColorPickerCtrl
объектов.
Поддерживает CMFCColorPickerCtrl
две пары стилей. Стили HEX и HEX_GREYSCALE подходят для стандартного выбора цвета. Стили PICKER и LUMINANCE подходят для выбора пользовательского цвета.
Выполните следующие действия, чтобы включить элемент управления в диалоговое CMFCColorPickerCtrl
окно:
Если вы используете ClassWizard, вставьте новый элемент управления кнопки в шаблон диалогового
CButton
окна (так какCMFCColorPickerCtrl
класс наследуется от класса).Вставьте переменную-член, связанную с новым элементом управления кнопкой, в класс диалогового окна. Затем измените тип переменной на
CButton
CMFCColorPickerCtrl
.WM_INITDIALOG
Вставьте обработчик сообщений для класса диалогового окна. В обработчике задайте тип, палитру и начальный выбранный цветCMFCColorPickerCtrl
элемента управления.
Пример
В следующем примере показано, как настроить CMFCColorPickerCtrl
объект с помощью различных методов в CMFCColorPickerCtrl
классе. В примере показано, как задать тип элемента управления выбора и как задать его цвет, оттенки, светимость и насыщенность. Пример является частью примера "Новые элементы управления".
CMFCColorPickerCtrl m_wndLum;
// CPalette m_palSys
// set the type of the color picker control
m_wndLum.SetType(CMFCColorPickerCtrl::LUMINANCE);
m_wndLum.SetPalette(&m_palSys);
// set the color, hue, luminance and saturation of the color picker control
m_wndLum.SetColor(RGB(0, 255, 0));
m_wndLum.SetHue(0.5);
m_wndLum.SetLuminance(2.5);
m_wndLum.SetLuminanceBarWidth(10);
m_wndLum.SetSaturation(0.5);
Иерархия наследования
Требования
Заголовок: afxcolorpickerctrl.h
CMFCColorPickerCtrl::CMFCColorPickerCtrl
Формирует объект CMFCColorPickerCtrl
.
CMFCColorPickerCtrl();
Возвращаемое значение
Замечания
CMFCColorPickerCtrl::D rawCursor
Вызывается платформой перед отображением курсора, указывающего на выбранный цвет.
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);
Параметры
Оттенок
[out] Указатель на переменную типа double, которая получает сведения об оттенок.
Яркости
[out] Указатель на переменную типа double, которая получает сведения о светимости.
Насыщенность
[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);
Параметры
Цвет
[in] Значение цвета RGB.
Замечания
CMFCColorPickerCtrl::SetHLS
Задает текущий цвет указанным значением цвета HLS.
void SetHLS(
double hue,
double luminance,
double saturation,
BOOL bInvalidate=TRUE);
Параметры
Оттенок
[in] Значение оттенка.
Яркости
[in] Значение света.
Насыщенность
[in] Значение насыщенности.
bInvalidate
[in] ЗНАЧЕНИЕ TRUE, чтобы принудить окно немедленно обновиться до нового цвета; в противном случае — ЗНАЧЕНИЕ FALSE. Значение по умолчанию — TRUE.
Замечания
CMFCColorPickerCtrl::SetHue
Изменяет цвет выбранного в данный момент цвета.
void SetHue(double Hue);
Параметры
Hue
[in] Значение оттенка.
Замечания
CMFCColorPickerCtrl::SetLuminance
Изменяет светимость выбранного цвета в данный момент.
void SetLuminance(double 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);
Параметры
Насыщенность
[in] Значение насыщенности.
Замечания
CMFCColorPickerCtrl::SetType
Задает тип элемента управления выбора цвета для отображения.
void SetType(COLORTYPE colorType);
Параметры
colorType
[in] Тип элемента управления выбора цвета.
Типы определяются CMFCColorPickerCtrl::COLORTYPE
перечислением. Возможные типы: LUMINANCE, PICKER, HEX и HEX_GREYSCALE. Тип по умолчанию — PICKER.
Замечания
Чтобы указать тип элемента управления выбора цвета, вызовите этот метод перед созданием элемента управления Windows.
См. также
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по