Clase CMFCToolTipCtrl
Implementación extendida de información sobre herramientas basada en CToolTipCtrl Class. Una información sobre herramientas basada en la clase CMFCToolTipCtrl
puede mostrar un icono, una etiqueta y una descripción. Puede personalizar su apariencia visual mediante un relleno de degradado, colores de texto y bordes personalizados, texto en negrita, esquinas redondeadas o un estilo de globo.
Para obtener información más detallada, consulta el código fuente que se ubica en la carpeta VC\atlmfc\src\mfc de la instalación de Visual Studio.
Sintaxis
class CMFCToolTipCtrl : public CToolTipCtrl
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
CMFCToolTipCtrl::CMFCToolTipCtrl |
Constructor predeterminado. |
Métodos públicos
Nombre | Descripción |
---|---|
CMFCToolTipCtrl::GetIconSize | Devuelve el tamaño de un icono en una información sobre herramientas. |
CMFCToolTipCtrl::GetParams | Devuelve la configuración de visualización en una información sobre herramientas. |
CMFCToolTipCtrl::OnDrawBorder | Dibuja el borde de una información sobre herramientas. |
CMFCToolTipCtrl::OnDrawDescription | |
CMFCToolTipCtrl::OnDrawIcon | Muestra un icono en una información sobre herramientas. |
CMFCToolTipCtrl::OnDrawLabel | Dibuja la etiqueta de una información sobre herramientas o calcula el tamaño de la etiqueta. |
CMFCToolTipCtrl::OnDrawSeparator | Dibuja el separador entre la etiqueta y la descripción en una información sobre herramientas. |
CMFCToolTipCtrl::OnFillBackground | Rellena el fondo de la información sobre herramientas. |
CMFCToolTipCtrl::SetDescription | Establece la descripción que se mostrará en la información sobre herramientas. |
CMFCToolTipCtrl::SetFixedWidth | |
CMFCToolTipCtrl::SetHotRibbonButton | |
CMFCToolTipCtrl::SetLocation | |
CMFCToolTipCtrl::SetParams | Especifica la apariencia visual de una información sobre herramientas con un objeto CMFCToolTipInfo . |
Comentarios
Use objetos CMFCToolTipCtrl
, CMFCToolTipInfo
y de la clase CTooltipManager de manera conjunta para implementar informaciones sobre herramientas personalizadas en la aplicación.
Por ejemplo, para usar informaciones sobre herramientas con estilo de globo, siga estos pasos:
Use el método de la clase CWinAppEx para inicializar el administrador de informaciones sobre herramientas de la aplicación.
Cree una estructura
CMFCToolTipInfo
para especificar el estilo visual que desee:CMFCToolTipInfo params; params.m_bBoldLabel = FALSE; params.m_bDrawDescription = FALSE; params.m_bDrawIcon = FALSE; params.m_bRoundedCorners = TRUE; params.m_bDrawSeparator = FALSE; if (m_bCustomColors) { params.m_clrFill = RGB (255, 255, 255); params.m_clrFillGradient = RGB (228, 228, 240); params.m_clrText = RGB (61, 83, 80); params.m_clrBorder = RGB (144, 149, 168); }
Use el método CTooltipManager::SetTooltipParams para establecer el estilo visual de todas las informaciones sobre herramientas de la aplicación con los estilos definidos en el objeto
CMFCToolTipInfo
:theApp.GetTooltipManager ()->SetTooltipParams (AFX_TOOLTIP_TYPE_ALL, RUNTIME_CLASS (CMFCToolTipCtrl), ¶ms);
También puede derivar una clase nueva de CMFCToolTipCtrl
para controlar la representación y el comportamiento de la información sobre herramientas. Para especificar una nueva clase de control de información sobre herramientas, use el método CTooltipManager::SetTooltipParams
:
myApp.GetTooltipManager ()->SetTooltipParams (AFX_TOOLTIP_TYPE_ALL,
RUNTIME_CLASS (CMyToolTipCtrl))
Para restaurar la clase de control predeterminada de información sobre herramientas y restablecer la apariencia de esta información a su estado predeterminado, especifique NULL en los parámetros de información sobre herramientas y de información de clase en tiempo de ejecución de SetTooltipParams
:
theApp.GetTooltipManager ()->SetTooltipParams (AFX_TOOLTIP_TYPE_ALL,
NULL,
NULL);
Ejemplo
En el ejemplo siguiente se muestra cómo construir un objeto CMFCToolTipCtrl
, se establece la descripción que se muestra en la información sobre herramientas y se establece también el ancho del control de esta información.
CMFCToolTipInfo *params = new CMFCToolTipInfo();
params->m_bBoldLabel = FALSE;
params->m_bDrawDescription = FALSE;
params->m_bDrawIcon = FALSE;
params->m_bRoundedCorners = TRUE;
params->m_bDrawSeparator = FALSE;
params->m_clrFill = RGB(255, 255, 255);
params->m_clrFillGradient = RGB(228, 228, 240);
params->m_clrText = RGB(61, 83, 80);
params->m_clrBorder = RGB(144, 149, 168);
CMFCToolTipCtrl *tipCtrl = new CMFCToolTipCtrl(params);
tipCtrl->SetDescription(_T("tool tip control"));
tipCtrl->SetFixedWidth(100, 150);
Jerarquía de herencia
Requisitos
Encabezado: afxtooltipctrl.h
CMFCToolTipCtrl::CMFCToolTipCtrl
CMFCToolTipCtrl(CMFCToolTipInfo* pParams = NULL);
Parámetros
[in] pParams
Comentarios
CMFCToolTipCtrl::GetIconSize
Devuelve el tamaño de un icono en una información sobre herramientas.
virtual CSize GetIconSize();
Valor devuelto
Tamaño del icono, en píxeles.
CMFCToolTipCtrl::GetParams
Devuelve la configuración de visualización en una información sobre herramientas.
const CMFCToolTipInfo& GetParams() const;
Valor devuelto
La configuración actual de visualización de la información sobre herramientas, que se almacena en un objeto CMFCToolTipInfo Class .
CMFCToolTipCtrl::OnDrawBorder
Dibuja el borde de una información sobre herramientas.
virtual void OnDrawBorder(
CDC* pDC,
CRect rect,
COLORREF clrLine);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
rect
[in] Rectángulo delimitador de la información sobre herramientas.
clrLine
[in] Color del borde.
Comentarios
Invalide este método en una clase derivada para personalizar la apariencia del borde de la información sobre herramientas.
CMFCToolTipCtrl::OnDrawDescription
virtual CSize OnDrawDescription(
CDC* pDC,
CRect rect,
BOOL bCalcOnly);
Parámetros
[in] pDC
[in] rect
[in] bCalcOnly
Valor devuelto
Comentarios
CMFCToolTipCtrl::OnDrawIcon
Muestra un icono en una información sobre herramientas.
virtual BOOL OnDrawIcon(
CDC* pDC,
CRect rectImage);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
rectImage
[in] Coordenadas del icono.
Valor devuelto
TRUE si se dibujó el icono. De lo contrario, FALSE.
Comentarios
Invalide este método en una clase derivada para mostrar un icono personalizado. También debe invalidar CMFCToolTipCtrl::GetIconSize para permitir que la información sobre herramientas calcule correctamente el diseño del texto y la descripción.
CMFCToolTipCtrl::OnDrawLabel
Dibuja la etiqueta de una información sobre herramientas o calcula el tamaño de la etiqueta.
virtual CSize OnDrawLabel(
CDC* pDC,
CRect rect,
BOOL bCalcOnly);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
rect
[in] Rectángulo delimitador del área de etiqueta.
bCalcOnly
[in] Si es TRUE, no se dibujará la etiqueta.
Valor devuelto
Tamaño de la etiqueta, en píxeles.
Comentarios
Invalide este método en una clase derivada si desea personalizar la apariencia de la etiqueta de la información sobre herramientas.
CMFCToolTipCtrl::OnDrawSeparator
Dibuja el separador entre la etiqueta y la descripción en una información sobre herramientas.
virtual void OnDrawSeparator(
CDC* pDC,
int x1,
int x2,
int y);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
x1
[in] Coordenada horizontal del extremo izquierdo del separador.
x2
[in] Coordenada horizontal del extremo derecho del separador.
Y
[in] Coordenada vertical del separador.
Comentarios
La implementación predeterminada dibuja una línea desde el punto (x1, y) hasta el punto (x2, y).
Invalide este método en una clase derivada para personalizar la apariencia del separador.
CMFCToolTipCtrl::OnFillBackground
Rellena el fondo de la información sobre herramientas.
virtual void OnFillBackground(
CDC* pDC,
CRect rect,
COLORREF& clrText,
COLORREF& clrLine);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
rect
[in] Especifica el rectángulo delimitador del área que se va a rellenar.
clrText
[in] Color de primer plano de la información sobre herramientas.
clrLine
[in] Color de los bordes y la línea delimitadora entre la etiqueta y la descripción.
Comentarios
La implementación predeterminada rellena el rectángulo que rect especifica con el color o el patrón especificada por la llamada más reciente a CMFCToolTipCtrl::SetParams.
Invalide este método en una clase derivada si desea personalizar la apariencia de la información sobre herramientas.
CMFCToolTipCtrl::SetDescription
Establece la descripción que se mostrará en la información sobre herramientas.
virtual void SetDescription(const CString strDesrciption);
Parámetros
strDesrciption
[in] Texto de descripción.
Comentarios
El texto de descripción se muestra en la información sobre herramientas debajo del separador.
CMFCToolTipCtrl::SetFixedWidth
void SetFixedWidth(
int nWidthRegular,
int nWidthLargeImage);
Parámetros
[in] nWidthRegular
[in] nWidthLargeImage
Comentarios
CMFCToolTipCtrl::SetHotRibbonButton
void SetHotRibbonButton(CMFCRibbonButton* pRibbonButton);
Parámetros
[in] pRibbonButton
Comentarios
CMFCToolTipCtrl::SetLocation
void SetLocation(CPoint pt);
Parámetros
[in] pt
Comentarios
CMFCToolTipCtrl::SetParams
Especifica la apariencia visual de una información sobre herramientas mediante un objeto de la clase CMFCToolTipInfo.
void SetParams(CMFCToolTipInfo* pParams);
Parámetros
pParams
[in] Puntero a un objeto de la clase CMFCToolTipInfo que contiene los parámetros de visualización.
Comentarios
Cada vez que se muestra la información sobre herramientas, se dibuja con los colores y estilos visuales que pParams especifica. El valor de pParams se almacena en el miembro protegido m_Params
, al que puede acceder una clase derivada que invalida CMFCToolTipCtrl::OnDrawBorder, CMFCToolTipCtrl::OnDrawIcon, CMFCToolTipCtrl::OnDrawLabel, CMFCToolTipCtrl::OnDrawSeparator o CMFCToolTipCtrl::OnFillBackground para mantener la apariencia especificada.
Consulte también
Gráfico de jerarquías
Clases
CToolTipCtrl Class
CTooltipManager (clase)
CMFCToolTipInfo (clase)
CWinAppEx (clase)