CMFCRibbonColorButton (clase)
La clase CMFCRibbonColorButton
implementa un botón en color que puede agregar a una barra de la cinta. El botón de color de la cinta muestra un menú desplegable que contiene una o varias paletas de colores.
Sintaxis
class CMFCRibbonColorButton : public CMFCRibbonGallery
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
CMFCRibbonColorButton::CMFCRibbonColorButton |
Métodos públicos
Nombre | Descripción |
---|---|
CMFCRibbonColorButton::AddColorsGroup | Agrega un grupo de colores al área de color normal. |
CMFCRibbonColorButton::EnableAutomaticButton | Especifica si el botón Automático está habilitado. |
CMFCRibbonColorButton::EnableOtherButton | Habilita el botón Otros . |
CMFCRibbonColorButton::GetAutomaticColor | |
CMFCRibbonColorButton::GetColor | Devuelve el color actualmente seleccionado. |
CMFCRibbonColorButton::GetColorBoxSize | Devuelve el tamaño de los elementos de color que aparecen en la barra de colores. |
CMFCRibbonColorButton::GetColumns | |
CMFCRibbonColorButton::GetHighlightedColor | Devuelve el color del elemento actualmente seleccionado en la paleta de colores emergente. |
CMFCRibbonColorButton::RemoveAllColorGroups | Quita todos los grupos de colores del área de color normal. |
CMFCRibbonColorButton::SetColor | Selecciona un color del área de color normal. |
CMFCRibbonColorButton::SetColorBoxSize | Establece el tamaño de los elementos de color que aparecen en la barra de colores. |
CMFCRibbonColorButton::SetColorName | |
CMFCRibbonColorButton::SetColumns | |
CMFCRibbonColorButton::SetDocumentColors | Especifica una lista de valores RGB para mostrar en el área de color del documento. |
CMFCRibbonColorButton::SetPalette | |
CMFCRibbonColorButton::UpdateColor |
Comentarios
El botón de color de la cinta muestra una barra de color cuando un usuario lo pulsa. De forma predeterminada, esta barra de colores contiene una paleta de selección de color denominada área de color normal. Si lo desea, la barra de colores puede mostrar un botón Automático , que permite al usuario seleccionar un color predeterminado, y un botón Otros , que muestra una paleta de colores emergente que contiene colores adicionales.
Ejemplo
En el siguiente ejemplo se muestra cómo usar los distintos métodos en la clase CMFCRibbonColorButton
. En el ejemplo se muestra cómo construir un objeto CMFCRibbonColorButton
, establecer la imagen de gran tamaño, habilitar el botón Automático , habilitar el botón Otros , establecer el número de columnas, establecer el tamaño de todos los elementos de color que aparecen en la barra de colores, agregar un grupo de colores al área de color normal y especificar una lista de los valores RGB para mostrar en el área de color del documento. Este fragmento de código forma parte del Ejemplo de cliente de dibujo.
// Create the "Paper Color" button
CMFCRibbonColorButton *pBtnPaperColor = new CMFCRibbonColorButton(ID_VIEW_PAPERCOLOR, _T("Paper Color\ng"), TRUE, 13, 1);
pBtnPaperColor->SetAlwaysLargeImage();
pBtnPaperColor->EnableAutomaticButton(_T("&Automatic"), RGB(255, 255, 255));
pBtnPaperColor->EnableOtherButton(_T("&More Colors..."), _T("More Colors"));
pBtnPaperColor->SetColumns(10);
pBtnPaperColor->SetColorBoxSize(CSize(17, 17));
// CList<COLORREF,COLORREF> m_lstMainColors
pBtnPaperColor->AddColorsGroup(_T("Theme Colors"), m_lstMainColors, TRUE);
// CList<COLORREF,COLORREF> m_lstAdditionalColors
pBtnPaperColor->AddColorsGroup(_T(""), m_lstAdditionalColors, FALSE);
// CList<COLORREF,COLORREF> m_lstStandardColors
pBtnPaperColor->AddColorsGroup(_T("Standard Colors"), m_lstStandardColors, TRUE);
CList<COLORREF, COLORREF> lstColors;
lstColors.AddTail(RGB(255, 0, 0));
lstColors.AddTail(RGB(0, 255, 0));
lstColors.AddTail(RGB(0, 0, 255));
pBtnPaperColor->SetDocumentColors(_T("Document Colors"), lstColors);
Jerarquía de herencia
Requisitos
Encabezado: afxribboncolorbutton.h
CMFCRibbonColorButton::AddColorsGroup
Agrega un grupo de colores al área de color normal.
void AddColorsGroup(
LPCTSTR lpszName,
const CList<COLORREF,COLORREF>& lstColors,
BOOL bContiguousColumns=FALSE);
Parámetros
lpszName
[in] Nombre del grupo.
lstColors
[in] Lista de colores.
bContiguousColumns
[in] Controla cómo se muestran los elementos de color en el grupo. Si es TRUE, los elementos de color se dibujan sin un espaciado vertical. Si es FALSE, los elementos de color se dibujan con un espaciado vertical.
Comentarios
Use esta función para hacer que el color aparezca en varios grupos de colores. Puede controlar cómo se muestran los colores en el grupo.
CMFCRibbonColorButton::CMFCRibbonColorButton
Construye un objeto CMFCRibbonColorButton
.
CMFCRibbonColorButton();
CMFCRibbonColorButton(
UINT nID,
LPCTSTR lpszText,
int nSmallImageIndex,
COLORREF color = RGB(0, 0, 0));
CMFCRibbonColorButton(
UINT nID,
LPCTSTR lpszText,
BOOL bSimpleButtonLook,
int nSmallImageIndex,
int nLargeImageIndex,
COLORREF color = RGB(0, 0, 0));
Parámetros
Nid
[in] Especifica el id. de comando del comando que se va a ejecutar cuando un usuario hace clic en el botón.
lpszText
[in] Especifica el texto que aparece en el botón.
nSmallImageIndex
[in] Índice de base cero de la imagen pequeña que se va a mostrar en el botón.
color
[in] Color del botón (el valor predeterminado es negro).
bSimpleButtonLook
[in] Si es TRUE, el botón se dibuja como un rectángulo simple.
nLargeImageIndex
[in] Índice de base cero de la imagen grande que se va a mostrar en el botón.
Valor devuelto
Comentarios
CMFCRibbonColorButton::EnableAutomaticButton
Especifica si el botón Automático está habilitado.
void EnableAutomaticButton(
LPCTSTR lpszLabel,
COLORREF colorAutomatic,
BOOL bEnable=TRUE,
LPCTSTR lpszToolTip=NULL,
BOOL bOnTop=TRUE,
BOOL bDrawBorder=FALSE);
Parámetros
lpszLabel
[in] Etiqueta del botón Automático.
colorAutomatic
[in] Valor RGB que especifica el color predeterminado del botón Automático.
bEnable
[in] TRUE si el botón Automático está habilitado; FALSE si está deshabilitado.
lpszToolTip
[in] Información sobre herramientas del botón Automático.
bOnTop
[in] Especifica si el botón Automático está en la parte superior, antes de la paleta de colores.
bDrawBorder
[in] TRUE si la aplicación dibuja un borde alrededor de la barra de colores en el botón de color de la cinta de opciones. La barra de colores muestra el color seleccionado actualmente. FALSE si la aplicación no dibuja un borde
CMFCRibbonColorButton::EnableOtherButton
Habilita el botón Otros .
void EnableOtherButton(
LPCTSTR lpszLabel,
LPCTSTR lpszToolTip=NULL);
Parámetros
lpszLabel
Etiqueta del botón.
lpszToolTip
Texto de información sobre herramientas para el botón Otros.
Comentarios
El botón Otros es el botón que aparece debajo del grupo de colores. Cuando el usuario hace clic en el botón Otros, aparece un cuadro de diálogo de colores.
CMFCRibbonColorButton::GetAutomaticColor
Recupera el color del botón automático actual.
COLORREF GetAutomaticColor() const;
Valor devuelto
Valor del color RGB que representa el color del botón automático actual.
Comentarios
El parámetro colorAutomatic
pasado al método CMFCRibbonColorButton::EnableAutomaticButton
establece el color del botón automático.
CMFCRibbonColorButton::GetColor
Devuelve el color actualmente seleccionado.
COLORREF GetColor() const;
Valor devuelto
Color seleccionado haciendo clic en el botón.
CMFCRibbonColorButton::GetColorBoxSize
Devuelve el tamaño de los elementos de color que aparecen en la barra de colores.
CSize GetColorBoxSize() const;
Valor devuelto
Tamaño de los botones de color de la paleta de colores desplegable.
CMFCRibbonColorButton::GetColumns
Obtiene el número de elementos de una fila de la presentación de la galería del botón de color de la cinta de opciones.
int GetColumns() const;
Valor devuelto
Devuelve el número de iconos de cada fila.
Comentarios
CMFCRibbonColorButton::GetHighlightedColor
Devuelve el color del elemento actualmente seleccionado en la paleta de colores emergente.
COLORREF GetHighlightedColor() const;
Valor devuelto
Color del elemento actualmente seleccionado en la paleta de colores emergente.
CMFCRibbonColorButton::RemoveAllColorGroups
Quita todos los grupos de colores del área de color normal.
void RemoveAllColorGroups();
CMFCRibbonColorButton::SetColor
Selecciona un color del área de color normal.
void SetColor(COLORREF color);
Parámetros
color
[in] Color que se va a establecer.
CMFCRibbonColorButton::SetColorBoxSize
Establece el tamaño de los elementos de color que aparecen en la barra de colores.
void SetColorBoxSize(CSize sizeBox);
Parámetros
sizeBox
[in] Nuevo tamaño de los botones de color de la paleta de colores.
CMFCRibbonColorButton::SetColorName
Establece un nuevo nombre para el color especificado.
static void __stdcall SetColorName(
COLORREF color,
const CString& strName);
Parámetros
color
[in] Valor RGB de un color.
strName
[in] Nuevo nombre del color especificado.
Comentarios
Dado que llama a CMFCColorBar::SetColorName
, este método cambia el nombre del color especificado en todos los objetos CMFCColorBar
de la aplicación.
CMFCRibbonColorButton::SetColumns
Establece el número de columnas que aparecen en la tabla de colores que se presenta al usuario durante el proceso de selección de color del usuario.
void SetColumns(int nColumns);
Parámetros
nColumns
[in] Número de iconos de colores que se van a mostrar en cada fila.
Comentarios
CMFCRibbonColorButton::SetDocumentColors
Especifica una lista de valores RGB para mostrar en el área de color del documento.
void SetDocumentColors(
LPCTSTR lpszLabel,
CList<COLORREF,COLORREF>& lstColors);
Parámetros
lpszLabel
[in] Texto que se va a mostrar con los colores de documento.
lstColors
[in] Referencia a una lista de valores RGB.
CMFCRibbonColorButton::SetPalette
Especifica los colores estándar que se van a mostrar en la tabla de colores que muestra el botón de color.
void SetPalette(CPalette* pPalette);
Parámetros
pPalette
[in] Puntero a una paleta de colores.
Comentarios
CMFCRibbonColorButton::UpdateColor
Lo llama el marco cuando el usuario selecciona un color de la tabla de colores que se muestra cuando el usuario hace clic en el botón de color.
void UpdateColor(COLORREF color);
Parámetros
color
[in] Color seleccionado por el usuario.
Comentarios
El método CMFCRibbonColorButton::UpdateColor
cambia el color del botón seleccionado actualmente y notifica a su elemento primario mediante el envío de un mensaje WM_COMMAND con una notificación estándar BN_CLICKED. Use el método CMFCRibbonColorButton::GetColor para recuperar el color seleccionado.