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


Класс CMFCColorBar

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

Синтаксис

class CMFCColorBar : public CMFCPopupMenuBar

Участники

Защищенные конструкторы

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

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

Имя Описание
CMFCColorBar::ContextToSize Вычисляет вертикальные и горизонтальные поля, необходимые для размещения кнопок в элементе управления цветовой панели, а затем настраивает расположение этих кнопок.
CMFCColorBar::CreateControl Создает окно элемента управления цветовой панели, присоединяет его к CMFCColorBar объекту и изменяет размер элемента управления, чтобы он содержал указанную палитру цветов.
CMFCColorBar::Create Создает окно управления цветовой панели и присоединяет его к объекту CMFCColorBar .
CMFCColorBar::EnableAutomaticButton Отображает или скрывает автоматическую кнопку.
CMFCColorBar::EnableOtherButton Включает или отключает отображение диалогового окна, позволяющего пользователю выбирать дополнительные цвета.
CMFCColorBar::GetColor Извлекает выбранный в данный момент цвет.
CMFCColorBar::GetCommandID Извлекает идентификатор команды текущего элемента управления цветовой панели.
CMFCColorBar::GetHighlightedColor Извлекает цвет, указывающий, что кнопка цвета имеет фокус; то есть кнопка горяча.
CMFCColorBar::GetHorzMargin Извлекает горизонтальное поле, которое является пространством между левой или правой ячейкой цвета и границой клиентской области.
CMFCColorBar::GetVertMargin Извлекает вертикальное поле, которое является пространством между верхней или нижней цветовой ячейкой и границей клиентской области.
CMFCColorBar::IsTearOff Указывает, можно ли закрепить текущую цветовую панель.
CMFCColorBar::SetColor Задает выбранный в данный момент цвет.
CMFCColorBar::SetColorName Задает новое имя для указанного цвета.
CMFCColorBar::SetCommandID Задает новый идентификатор команды для элемента управления цветовой панели.
CMFCColorBar::SetDocumentColors Задает список цветов, используемых в текущем документе.
CMFCColorBar::SetHorzMargin Задает горизонтальное поле, которое является пространством между левой или правой цветовой ячейкой и границой клиентской области.
CMFCColorBar::SetVertMargin Задает вертикальное поле, которое является пространством между верхней или нижней цветовой ячейкой и границей клиентской области.

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

Имя Описание
CMFCColorBar::AdjustLocations Настраивает позиции кнопок цвета в элементе управления цветовой панели.
CMFCColorBar::AllowChangeTextLabels Указывает, может ли измениться текстовая метка цветовой кнопки.
CMFCColorBar::AllowShowOnList Указывает, может ли объект элемента управления цветовой панели отображаться в списке панелей инструментов во время процесса настройки.
CMFCColorBar::CalcSize Вызывается платформой в рамках процесса вычисления макета.
CMFCColorBar::CreatePalette Инициализирует палитру с цветами в указанном массиве цветов.
CMFCColorBar::GetColorGridSize Вычисляет количество строк и столбцов в сетке элемента управления цветовой панели.
CMFCColorBar::GetExtraHeight Вычисляет дополнительную высоту, необходимую текущей цветовой строке для отображения других элементов пользовательского интерфейса, таких как кнопка "Другой ", цвета документа и т. д.
CMFCColorBar::InitColors Инициализирует массив цветов с цветами в указанной палитре или системной палитре по умолчанию.
CMFCColorBar::OnKey Вызывается платформой, когда пользователь нажимает кнопку клавиатуры.
CMFCColorBar::OnSendCommand Вызывается платформой для закрытия иерархии элементов управления всплывающих окон.
CMFCColorBar::OnUpdateCmdUI Вызывается платформой для включения или отключения элемента пользовательского интерфейса элемента управления цветовой панели перед отображением элемента.
CMFCColorBar::OpenColorDialog Открывает диалоговое окно цвета.
CMFCColorBar::Rebuild Полностью перерисовывает элемент управления цветовой панели.
CMFCColorBar::SelectPalette Задает логическую палитру указанного контекста устройства палитре родительской кнопки текущего элемента управления цветовой панели.
CMFCColorBar::SetPropList Задает защищенный m_pWndPropList элемент данных указанному указателю на элемент управления сеткой свойств.
CMFCColorBar::ShowCommandMessageString Запрашивает окно кадра, владеющее элементом управления цветовой панели, чтобы обновить строку сообщения в строке состояния.

Защищенные члены данных

Имя Описание
m_bInternal Логическое поле, определяющее, обрабатываются ли события мыши. Как правило, события мыши обрабатываются при значении TRUE, а режим настройки — FALSE.
m_bIsEnabled Логическое значение, указывающее, включен ли элемент управления.
m_bIsTearOff Логическое значение, указывающее, поддерживает ли элемент управления цветовой панели закрепление.
m_BoxSize Объект CSize, указывающий размер ячейки в сетке цветовой панели.
m_bShowDocColorsWhenDocked Логическое значение, указывающее, следует ли отображать цвета документа при закреплении цветовой панели. Дополнительные сведения см. в разделе CMFCColorBar::SetDocumentColors.
m_bStdColorDlg Логическое значение, указывающее, следует ли отображать диалоговое окно стандартного цвета системы или диалоговое окно CMFCColorDialog . Дополнительные сведения см. в разделе CMFCColorBar::EnableOtherButton.
m_ColorAutomatic Объект COLORREF , который сохраняет текущий автоматический цвет. Дополнительные сведения см. в разделе CMFCColorBar::EnableOtherButton.
m_ColorNames Объект CMap, который связывает набор цветов RGB с их именами.
m_colors CArray значений COLORREF, содержащих цвета, отображаемые в элементе управления цветовой панели.
m_ColorSelected Значение COLORREF, которое является цветом, выбранным пользователем в элементе управления цветовой панели.
m_lstDocColors Список значений COLORREF, содержащий цвета, которые в настоящее время используются в документе.
m_nCommandID Целое число без знака, которое является идентификатором команды кнопки цвета.
m_nHorzMargin Целое число, которое является горизонтальным полем между кнопками цвета в сетке цветов.
m_nHorzOffset Целое число, которое является горизонтальным смещением в центр кнопки цвета. Это значение важно, если кнопка отображает текст или изображение в дополнение к цвету.
m_nNumColumns Целое число, которое является числом столбцов в сетке элементов управления цветовой панели.
m_nNumColumnsVert Целое число, которое является числом столбцов в вертикально ориентированной сетке цветов.
m_nNumRowsHorz Целое число, которое является числом столбцов в горизонтально ориентированной сетке цветов.
m_nRowHeight Целое число, которое является высотой строки кнопок цвета в сетке цветов.
m_nVertMargin Целое число, которое является вертикальным полем между кнопками цвета в сетке цветов.
m_nVertOffset Целое число, которое является вертикальным смещением в центр кнопки цвета. Это значение важно, если кнопка отображает текст или изображение в дополнение к цвету.
m_Palette CPalette цветов, используемых в элементе управления цветовой панели.
m_pParentBtn Указатель на объект CMFCColorButton , который является родительским элементом текущей кнопки. Это значение имеет значение, если кнопка цвета находится в иерархии элементов управления панели инструментов или находится в элементе управления сеткой свойств цвета.
m_pParentRibbonBtn Указатель на объект CMFCRibbonColorButton , который находится на ленте и является родительской кнопкой текущей кнопки. Это значение имеет значение, если кнопка цвета находится в иерархии элементов управления панели инструментов или находится в элементе управления сеткой свойств цвета.
m_pWndPropList Указатель на объект CMFCPropertyGridCtrl .
m_strAutoColor CString, который отображается на кнопке "Автоматически". Дополнительные сведения см. в разделе CMFCColorBar::EnableAutomaticButton.
m_strDocColors CString, представляющий собой текст, отображаемый на кнопке цвета документа. Дополнительные сведения см. в разделе CMFCColorBar::SetDocumentColors.
m_strOtherColor CString, который отображается на другой кнопке. Дополнительные сведения см. в разделе CMFCColorBar::EnableOtherButton.

Замечания

Как правило, объект не создается напрямую CMFCColorBar . Вместо этого класс CMFCColorMenuButton (используется в меню и панели инструментов) или класс CMFCColorButton создает CMFCColorBar объект.

Класс CMFCColorBar предоставляет следующие функциональные возможности:

  • Автоматически настраивает список цветов документа.

  • Сохраняет и восстанавливает его состояние вместе с состоянием документа.

  • Управляет кнопкой "автоматически".

  • Использует элемент управления класса CMFCColorPickerCtrl для выбора пользовательского цвета.

  • Поддерживает состояние "отключать" (если оно создается с помощью класса CMFCColorMenuButton).

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

  1. Создайте обычную кнопку меню и назначьте его идентификатор, например ID_CHAR_COLOR.

  2. В классе окна кадра переопределите метод CFrameWndEx::OnShowPopupMenu и замените обычную кнопку меню объектом класса CMFCColorMenuButton (вызывая CMFCToolBar::ReplaceButton).

  3. Задайте все стили и включите или отключите функции CMFCColorBar объекта во время создания класса CMFCColorMenuButton. Объект CMFCColorMenuButton динамически создает CMFCColorBar объект после вызова платформы CreatePopupMenu метода.

Когда пользователь нажимает кнопку элемента управления цветовой панели, платформа использует ON_COMMAND макрос для уведомления родительского элемента управления цветовой панели. В макросе параметр идентификатора команды — это значение, назначенное кнопке управления цветовой панели на шаге 1 (ID_CHAR_COLOR в этом примере). Дополнительные сведения см. в классе CMFCColorMenuButton, классе CMFCColorButton, классе CMFCColorPickerCtrl, классе CFrameWndEx и классах CMFCToolBar.

Пример

В следующем примере показано, как настроить цветовую панель с помощью различных методов в CMFCColorBar классе. Методы задают горизонтальные и вертикальные поля, включите другую кнопку, создайте окно управления цветовой панелью и задает выбранный цвет. Этот пример является частью примера "Новые элементы управления".

CMFCColorBar m_wndColorBar;
// set the margins
m_wndColorBar.SetHorzMargin(0);
m_wndColorBar.SetVertMargin(0);
// enable the display of a dialog box that
// lets the user select more colors
m_wndColorBar.EnableOtherButton(_T("Other..."));
// create a color bar control window
m_wndColorBar.CreateControl(this, rectColorBar, IDC_COLORBAR, 5 /* columns */);
// set the currently selected color
m_wndColorBar.SetColor(RGB(255, 0, 0));

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

CObject

CCmdTarget

CWnd

Cbasepane

Cpane

CMFCBaseToolBar

CMFCToolBar

CMFCPopupMenuBar

CMFCColorBar

Requirements

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

CMFCColorBar::AdjustLocations

Настраивает позиции кнопок цвета в элементе управления цветовой панели.

virtual void AdjustLocations();

Замечания

Этот метод вызывается платформой во время обработки сообщений WM_SIZE.

CMFCColorBar::AllowChangeTextLabels

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

virtual BOOL AllowChangeTextLabels() const;

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

Всегда FALSE.

Замечания

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

CMFCColorBar::AllowShowOnList

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

virtual BOOL AllowShowOnList() const;

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

Всегда TRUE.

Замечания

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

CMFCColorBar::CalcSize

Вызывается платформой в рамках процесса вычисления макета.

virtual CSize CalcSize(BOOL bVertDock);

Параметры

bVertDock
[in] Значение TRUE, чтобы указать, что элемент управления цветовой панели закреплен по вертикали; Значение FALSE, указывающее, что элемент управления цветовой панели закреплен по горизонтали.

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

Размер массива кнопок цвета в элементе управления цветовой панели.

CMFCColorBar::CMFCColorBar

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

CMFCColorBar(
    const CArray<COLORREF,COLORREF>& colors,
    COLORREF color,
    LPCTSTR lpszAutoColor,
    LPCTSTR lpszOtherColor,
    LPCTSTR lpszDocColors,
    CList<COLORREF,COLORREF>& lstDocColors,
    int nColumns,
    int nRowsDockHorz,
    int nColDockVert,
    COLORREF colorAutomatic,
    UINT nCommandID,
    CMFCColorButton* pParentBtn);

CMFCColorBar(
    const CArray<COLORREF,COLORREF>& colors,
    COLORREF color,
    LPCTSTR lpszAutoColor,
    LPCTSTR lpszOtherColor,
    LPCTSTR lpszDocColors,
    CList<COLORREF,COLORREF>& lstDocColors,
    int nColumns,
    COLORREF colorAutomatic,
    UINT nCommandID,
    CMFCRibbonColorButton* pParentRibbonBtn);

CMFCColorBar(
    CMFCColorBar& src,
    UINT uiCommandID);

Параметры

Цвета
[in] Массив цветов, отображаемых платформой в элементе управления цветовой панели.

color
[in] Изначально выбранный цвет.

lpszAutoColor
[in] Текстовая метка автоматической (по умолчанию) цветовой кнопки или NULL.

Стандартная метка для автоматической кнопки — "Автоматически".

lpszOtherColor
[in] Текстовая метка другой кнопки, которая отображает дополнительные варианты цвета или NULL.

Стандартная метка для другой кнопки — дополнительные цвета....

lpszDocColors
[in] Текстовая метка кнопки цвета документа. Палитра цветов документа содержит все цвета, которые в данный момент использует документ.

lstDocColors
[in] Список цветов, которые в данный момент использует документ.

nColumns
[in] Количество столбцов, которые имеет массив цветов.

nRowsDockHorz
[in] Количество строк, которые имеет цветовая панель при закреплении по горизонтали.

nColDockVert
[in] Количество столбцов, имеющих цветовую панель при закреплении по вертикали.

colorAutomatic
[in] Цвет по умолчанию, который применяется платформой при нажатии автоматической кнопки.

nCommandID
[in] Идентификатор команды элемента управления цветовой панели.

pParentBtn
[in] Указатель на родительскую кнопку.

src
[in] Существующий CMFCColorBar объект, скопированный в новый CMFCColorBar объект.

uiCommandID
[in] Идентификатор команды.

CMFCColorBar::ContextToSize

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

void ContextToSize(
    BOOL bSquareButtons = TRUE,
    BOOL bCenterButtons = TRUE);

Параметры

bSquareButtons
[in] ЗНАЧЕНИЕ TRUE, чтобы указать, что форма кнопок на элементе управления цветовой панели имеет квадрат; в противном случае — ЗНАЧЕНИЕ FALSE. Значение по умолчанию — TRUE.

bCenterButtons
[in] ЗНАЧЕНИЕ TRUE, чтобы указать, что содержимое на лице кнопки элемента управления цветовой панели по центру; в противном случае — ЗНАЧЕНИЕ FALSE. Значение по умолчанию — TRUE.

Замечания

CMFCColorBar::Create

Создает окно управления цветовой панели и присоединяет его к объекту CMFCColorBar .

virtual BOOL Create(
    CWnd* pParentWnd,
    DWORD dwStyle,
    UINT nID,
    CPalette* pPalette=NULL,
    int nColumns=0,
    int nRowsDockHorz=0,
    int nColDockVert=0);

Параметры

pParentWnd
[in] Указатель на родительское окно.

dwStyle
[in] Побитовое сочетание стилей окон (OR).

Nid
[in] Идентификатор команды.

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

nColumns
[in] Количество столбцов в элементе управления цветовой панели. По умолчанию установлено значение 0.

nRowsDockHorz
[in] Количество строк в элементе управления цветовой панели при закреплении по горизонтали. По умолчанию установлено значение 0.

nColDockVert
[in] Количество столбцов в элементе управления цветовой панели при закреплении по вертикали. По умолчанию установлено значение 0.

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

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

Замечания

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

CMFCColorBar::CreateControl

Создает окно управления цветовой панели, присоединяет его к CMFCColorBar объекту и изменяет размер окна управления, чтобы он содержал указанную палитру цветов.

virtual BOOL CreateControl(
    CWnd* pParentWnd,
    const CRect& rect,
    UINT nID,
    int nColumns=-1,
    CPalette* pPalette=NULL);

Параметры

pParentWnd
[in] Указатель на родительское окно. Не может быть NULL.

rect
[in] Ограничивающий прямоугольник, указывающий место рисования элемента управления цветовой панели.

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

nColumns
[in] Идеальное количество столбцов в элементе управления цветовой панели. Этот метод изменяет это число в соответствии с указанной палитрой цветов. Значение по умолчанию равно -1, что означает, что этот параметр не указан.

pPalette
[in] Указатель на палитру цветов или NULL. Если этот параметр имеет значение NULL, этот метод вычисляет размер элемента управления цветовой панели, как если бы были указаны 20 цветов. По умолчанию имеет значение NULL.

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

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

Замечания

Этот метод использует параметры rect, nColumns и pPalette для вычисления соответствующего числа или строк и столбцов в элементе управления цветовой панели, а затем вызывает метод CMFCColorBar::Create .

CMFCColorBar::CreatePalette

Инициализирует палитру с цветами в указанном массиве цветов.

static BOOL CreatePalette(
    const CArray<COLORREF, COLORREF>& arColors,
    CPalette& palette);

Параметры

arColors
[in] Массив цветов.

Палитры
[in] Палитра цветов.

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

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

CMFCColorBar::EnableAutomaticButton

Отображает или скрывает автоматическую кнопку.

void EnableAutomaticButton(
    LPCTSTR lpszLabel,
    COLORREF colorAutomatic,
    BOOL bEnable=TRUE);

Параметры

lpszLabel
[in] Текстовая метка автоматической (по умолчанию) цветовой кнопки или NULL.

Стандартная метка для автоматической кнопки — "Автоматически".

colorAutomatic
[in] Цвет по умолчанию, который применяется платформой при нажатии автоматической кнопки.

bEnable
[in] ЗНАЧЕНИЕ TRUE для включения автоматической кнопки; ЗНАЧЕНИЕ FALSE, чтобы отключить автоматическую кнопку. Значение по умолчанию — TRUE.

Замечания

Текстовая метка автоматической кнопки удаляется, если параметр lpszLabel имеет значение NULL или параметр bEnable имеет значение FALSE.

CMFCColorBar::EnableOtherButton

Включает или отключает отображение диалогового окна, позволяющего пользователю выбирать дополнительные цвета.

void EnableOtherButton(
    LPCTSTR lpszLabel,
    BOOL bAltColorDlg=TRUE,
    BOOL bEnable=TRUE);

Параметры

lpszLabel
[in] Текстовая метка другой кнопки, которая отображает дополнительные варианты цвета или NULL.

Стандартная метка для этой кнопки — дополнительные цвета....

bAltColorDlg
[in] ЗНАЧЕНИЕ TRUE для отображения диалогового окна CMFCColorDialog ; Значение FALSE для отображения стандартного диалогового окна CColorDialog . Значение по умолчанию — TRUE.

bEnable
[in] ЗНАЧЕНИЕ TRUE для включения кнопки; ЗНАЧЕНИЕ FALSE, чтобы отключить кнопку. Значение по умолчанию — TRUE.

CMFCColorBar::GetColor

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

COLORREF GetColor() const;

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

Выбранный в данный момент цвет.

CMFCColorBar::GetColorGridSize

Вычисляет количество строк и столбцов в сетке элемента управления цветовой панели.

CSize GetColorGridSize(BOOL bVertDock) const;

Параметры

bVertDock
[in] ЗНАЧЕНИЕ TRUE для выполнения вычисления для элемента управления цветной панели с вертикальной закреплением; в противном случае выполните вычисление для горизонтально закрепленного элемента управления.

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

Объект CSize , компонент которого cx содержит количество столбцов и cy компонент которого содержит количество строк.

CMFCColorBar::GetCommandID

Извлекает идентификатор команды текущего элемента управления цветовой панели.

UINT GetCommandID() const;

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

Идентификатор команды.

Замечания

Когда пользователь выбирает новый цвет, платформа отправляет идентификатор команды в сообщении WM_COMMAND, чтобы уведомить родительский объект CMFCColorBar .

CMFCColorBar::GetExtraHeight

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

int GetExtraHeight(int nNumColumns) const;

Параметры

nNumColumns
[in] Если элемент управления цветовой панели содержит цвета документа, количество столбцов, отображаемых в сетке цветов документа. В противном случае это значение не используется.

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

Вычисляемая дополнительная высота, требуемая.

CMFCColorBar::GetHighlightedColor

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

COLORREF GetHighlightedColor() const;

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

Значение RGB.

Замечания

CMFCColorBar::GetHorzMargin

Извлекает горизонтальное поле, которое является пространством между левой или правой ячейкой цвета и границой клиентской области.

int GetHorzMargin();

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

Горизонтальное поле.

CMFCColorBar::GetVertMargin

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

int GetVertMargin() const;

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

Вертикальное поле.

CMFCColorBar::InitColors

Инициализирует массив цветов с цветами в указанной палитре или с помощью системной палитры по умолчанию.

static int InitColors(
    CPalette* pPalette,
    CArray<COLORREF, COLORREF>& arColors);

Параметры

pPalette
[in] Указатель на объект палитры или NULL. Если этот параметр имеет значение NULL, этот метод использует палитру по умолчанию операционной системы.

arColors
[in] Массив цветов.

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

Количество элементов в массиве цветов.

CMFCColorBar::IsTearOff

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

BOOL IsTearOff() const;

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

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

Замечания

Если элемент управления цветовой панели можно закрепить, его можно оторвать от панели управления и закрепить в другом расположении.

CMFCColorBar::OnKey

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

virtual BOOL OnKey(UINT nChar);

Параметры

Nchar
[in] Код виртуального ключа для клавиши, нажатой пользователем.

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

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

CMFCColorBar::OnSendCommand

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

virtual BOOL OnSendCommand(const CMFCToolBarButton* pButton);

Параметры

pButton
[in] Указатель на элемент управления, расположенный на панели инструментов.

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

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

CMFCColorBar::OnUpdateCmdUI

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

virtual void OnUpdateCmdUI(
    CFrameWnd* pTarget,
    BOOL bDisableIfNoHndler);

Параметры

pTarget
[in] Указатель на окно, содержащее элемент пользовательского интерфейса для обновления.

bDisableIfNoHndler
[in] ЗНАЧЕНИЕ TRUE, чтобы отключить элемент пользовательского интерфейса, если обработчик не определен в карте сообщений; в противном случае — ЗНАЧЕНИЕ FALSE.

Замечания

Когда пользователь приложения щелкает элемент пользовательского интерфейса, элемент должен знать, следует ли отображать его как включенный или отключенный. Цель командного сообщения предоставляет эти сведения путем реализации обработчика команд ON_UPDATE_COMMAND_UI. Используйте этот метод для обработки команды. Дополнительные сведения см. в разделе "Класс CCmdUI".

CMFCColorBar::OpenColorDialog

Открывает диалоговое окно цвета.

virtual BOOL OpenColorDialog(
    const COLORREF colorDefault,
    COLORREF& colorRes);

Параметры

colorDefault
[in] Цвет, выбранный по умолчанию при открытии диалогового окна цвета.

colorRes
[out] Выбранный пользователем цвет.

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

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

Замечания

CMFCColorBar::Rebuild

Полностью перерисовывает элемент управления цветовой панели.

virtual void Rebuild();

CMFCColorBar::SelectPalette

Задает логическую палитру указанного контекста устройства палитре родительской кнопки текущего элемента управления цветовой панели.

CPalette* SelectPalette(CDC* pDC);

Параметры

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

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

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

CMFCColorBar::SetColor

Задает выбранный в данный момент цвет.

void SetColor(COLORREF color);

Параметры

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

CMFCColorBar::SetColorName

Задает новое имя для указанного цвета.

static void SetColorName(
    COLORREF color,
    const CString& strName);

Параметры

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

strName
[in] Новое имя указанного цвета.

Замечания

Этот метод изменяет имя указанного цвета во всех CMFCColorBar объектах в приложении.

CMFCColorBar::SetCommandID

Задает новый идентификатор команды для элемента управления цветовой панели.

void SetCommandID(UINT nCommandID);

Параметры

nCommandID
[in] Идентификатор команды.

Замечания

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

CMFCColorBar::SetDocumentColors

Задает список цветов, используемых в текущем документе.

void SetDocumentColors(
    LPCTSTR lpszCaption,
    CList<COLORREF,COLORREF>& lstDocColors,
    BOOL bShowWhenDocked=FALSE);

Параметры

lpszCaption
[in] Подпись, отображаемое при не закреплении элемента управления цветовой панели.

lstDocColors
[in] Список цветов, заменяющих текущие цвета документа.

bShowWhenDocked
[in] ЗНАЧЕНИЕ TRUE для отображения цветов документа при закреплении элемента управления цветовой панели; в противном случае — ЗНАЧЕНИЕ FALSE. Значение по умолчанию — FALSE.

Замечания

Цвета документа — это цвета , которые в настоящее время используются в документе. Платформа автоматически поддерживает список цветов документов, но этот метод можно использовать для изменения списка.

CMFCColorBar::SetHorzMargin

Задает горизонтальное поле, которое является пространством между левой или правой цветовой ячейкой и границей клиентской области.

void SetHorzMargin(int nHorzMargin);

Параметры

nHorzMargin
[in] Горизонтальное поле в пикселях.

Замечания

По умолчанию конструктор CMFCColorBar::CMFCColorBar задает горизонтальное поле 4 пикселя.

CMFCColorBar::SetPropList

Задает защищенный m_pWndPropList элемент данных указанному указателю на элемент управления сеткой свойств.

void SetPropList(CMFCPropertyGridCtrl* pWndList);

Параметры

pWndList
[in] Указатель на объект элемента управления сеткой свойств.

CMFCColorBar::SetVertMargin

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

void SetVertMargin(int nVertMargin);

Параметры

nVertMargin
[in] Вертикальное поле в пикселях.

Замечания

По умолчанию конструктор CMFCColorBar::CMFCColorBar задает вертикальное поле 4 пикселя.

CMFCColorBar::ShowCommandMessageString

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

virtual void ShowCommandMessageString(UINT uiCmdId);

Параметры

uiCmdId
[in] Идентификатор команды. (Этот параметр игнорируется.)

Замечания

Этот метод отправляет WM_SETMESSAGESTRING сообщение владельцу элемента управления цветовой панели.

См. также

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