Classe CMFCToolTipCtrl
Implementazione estesa di descrizioni comandi basata sulla CToolTipCtrl Class. Una descrizione comando basata sulla classe CMFCToolTipCtrl
può visualizzare un'icona, un'etichetta e una descrizione. È possibile personalizzare l'aspetto visivo utilizzando un riempimento sfumato, testo e colori del bordo personalizzati, testo in grassetto, angoli arrotondati o uno stile di tipo fumetto.
Per altri dettagli, vedere il codice sorgente che si trova nella cartella VC\atlmfc\src\mfc dell'installazione di Visual Studio.
Sintassi
class CMFCToolTipCtrl : public CToolTipCtrl
Membri
Costruttori pubblici
Nome | Descrizione |
---|---|
CMFCToolTipCtrl::CMFCToolTipCtrl |
Costruttore predefinito. |
Metodi pubblici
Nome | Descrizione |
---|---|
CMFCToolTipCtrl::GetIconSize | Restituisce le dimensioni di un'icona in una descrizione comando. |
CMFCToolTipCtrl::GetParams | Restituisce le impostazioni di visualizzazione di una descrizione comando. |
CMFCToolTipCtrl::OnDrawBorder | Estrae il bordo di una descrizione comando. |
CMFCToolTipCtrl::OnDrawDescription | |
CMFCToolTipCtrl::OnDrawIcon | Visualizza un'icona in una descrizione comando. |
CMFCToolTipCtrl::OnDrawLabel | Crea l'etichetta della descrizione comando o calcola la dimensione dell'etichetta. |
CMFCToolTipCtrl::OnDrawSeparator | Crea il separatore tra l'etichetta e la descrizione in una descrizione comando. |
CMFCToolTipCtrl::OnFillBackground | Riempie lo sfondo di descrizione comando. |
CMFCToolTipCtrl::SetDescription | Imposta la descrizione che verrà visualizzata dalla descrizione comando. |
CMFCToolTipCtrl::SetFixedWidth | |
CMFCToolTipCtrl::SetHotRibbonButton | |
CMFCToolTipCtrl::SetLocation | |
CMFCToolTipCtrl::SetParams | Specifica l'aspetto di una descrizione comando con un oggetto CMFCToolTipInfo . |
Osservazioni:
Usare CMFCToolTipCtrl
gli oggetti Classe , CMFCToolTipInfo
e CTooltipManager insieme per implementare descrizioni comando personalizzate nell'applicazione.
Ad esempio, per usare le descrizioni comando di tipo fumetto, seguire questa procedura:
Usare il metodo CWinAppEx Class per inizializzare lo strumento di gestione descrizioni comando nell'applicazione.
Creare una struttura
CMFCToolTipInfo
per specificare lo stile di visualizzazione desiderata: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); }
Usare il metodo CTooltipManager::SetTooltipParams per impostare lo stile di visualizzazione per tutte le descrizioni comando nell'applicazione usando gli stili definiti nell'oggetto
CMFCToolTipInfo
:theApp.GetTooltipManager ()->SetTooltipParams (AFX_TOOLTIP_TYPE_ALL, RUNTIME_CLASS (CMFCToolTipCtrl), ¶ms);
È anche possibile derivare una nuova classe da CMFCToolTipCtrl
per controllare il comportamento e il rendering di descrizione comando. Per specificare una nuova classe del controllo Tooltip, usare il metodo CTooltipManager::SetTooltipParams
:
myApp.GetTooltipManager ()->SetTooltipParams (AFX_TOOLTIP_TYPE_ALL,
RUNTIME_CLASS (CMyToolTipCtrl))
Per ripristinare la classe predefinita del controllo Tooltip e reimpostare il relativo aspetto allo stato predefinito, specificare NULL nei parametri di informazioni di descrizione comando e nella classe di runtime SetTooltipParams
:
theApp.GetTooltipManager ()->SetTooltipParams (AFX_TOOLTIP_TYPE_ALL,
NULL,
NULL);
Esempio
Nell'esempio seguente viene illustrato come costruire un oggetto CMFCToolTipCtrl
, come impostare la descrizione visualizzata dalla descrizione comando e come impostare la larghezza del controllo Tooltip.
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);
Gerarchia di ereditarietà
Requisiti
Intestazione: afxtooltipctrl.h
CMFCToolTipCtrl::CMFCToolTipCtrl
CMFCToolTipCtrl(CMFCToolTipInfo* pParams = NULL);
Parametri
[in] pParams
Osservazioni:
CMFCToolTipCtrl::GetIconSize
Restituisce le dimensioni di un'icona in una descrizione comando.
virtual CSize GetIconSize();
Valore restituito
Dimensioni dell'icona, in pixel.
CMFCToolTipCtrl::GetParams
Restituisce le impostazioni di visualizzazione di una descrizione comando.
const CMFCToolTipInfo& GetParams() const;
Valore restituito
Le impostazioni di visualizzazione della descrizione comando corrente, archiviate in un oggetto classe CMFCToolTipInfo.
CMFCToolTipCtrl::OnDrawBorder
Estrae il bordo di una descrizione comando.
virtual void OnDrawBorder(
CDC* pDC,
CRect rect,
COLORREF clrLine);
Parametri
pDC
[in] Puntatore a un contesto di dispositivo.
rect
[in] Rettangolo di delimitazione della descrizione comando.
clrLine
[in] Colore bordo.
Osservazioni:
Eseguire l'override di questo metodo in una classe derivata per personalizzare l'aspetto del bordo della descrizione comando.
CMFCToolTipCtrl::OnDrawDescription
virtual CSize OnDrawDescription(
CDC* pDC,
CRect rect,
BOOL bCalcOnly);
Parametri
[in] pDC
[in] rect
[in] bCalcOnly
Valore restituito
Osservazioni:
CMFCToolTipCtrl::OnDrawIcon
Visualizza un'icona in una descrizione comando.
virtual BOOL OnDrawIcon(
CDC* pDC,
CRect rectImage);
Parametri
pDC
[in] Puntatore a un contesto di dispositivo.
rectImage
[in] Coordinate dell'icona.
Valore restituito
TRUE se l'icona è stata disegnata. In caso contrario, FALSE.
Osservazioni:
Eseguire l'override di questo metodo in una classe derivata per visualizzare un'icona personalizzata. È inoltre necessario eseguire l'override di CMFCToolTipCtrl::GetIconSize per consentire alla descrizione comando di calcolare correttamente il layout del testo e della descrizione.
CMFCToolTipCtrl::OnDrawLabel
Crea l'etichetta della descrizione comando o calcola la dimensione dell'etichetta.
virtual CSize OnDrawLabel(
CDC* pDC,
CRect rect,
BOOL bCalcOnly);
Parametri
pDC
[in] Puntatore a un contesto di dispositivo.
rect
[in] Rettangolo di delimitazione dell'area dell'etichetta.
bCalcOnly
[in] Se TRUE, l'etichetta non verrà disegnata.
Valore restituito
Dimensioni dell'etichetta, in pixel.
Osservazioni:
Eseguire l'override di questo metodo in una classe derivata se si desidera personalizzare l'aspetto dell'etichetta della descrizione comando.
CMFCToolTipCtrl::OnDrawSeparator
Crea il separatore tra l'etichetta e la descrizione in una descrizione comando.
virtual void OnDrawSeparator(
CDC* pDC,
int x1,
int x2,
int y);
Parametri
pDC
[in] Puntatore a un contesto di dispositivo.
x1
[in] Coordinata orizzontale dell'estremità sinistra del separatore.
x2
[in] Coordinata orizzontale dell'estremità destra del separatore.
Y
[in] Coordinata verticale del separatore.
Osservazioni:
L'implementazione predefinita disegna una linea dal punto (x1, y) al punto (x2, y).
Eseguire l'override di questo metodo in una classe derivata per personalizzare l'aspetto del separatore.
CMFCToolTipCtrl::OnFillBackground
Riempie lo sfondo di descrizione comando.
virtual void OnFillBackground(
CDC* pDC,
CRect rect,
COLORREF& clrText,
COLORREF& clrLine);
Parametri
pDC
[in] Puntatore a un contesto di dispositivo.
rect
[in] Specifica il rettangolo di delimitazione dell'area da riempire.
clrText
[in] Colore di primo piano della descrizione comando.
clrLine
[in] Colore dei bordi e linea del delimitatore tra etichetta e descrizione.
Osservazioni:
L'implementazione predefinita riempie il rettangolo specificato da rect con il colore o il motivo specificato dalla chiamata più recente a CMFCToolTipCtrl::SetParams.
Eseguire l'override di questo metodo in una classe derivata se si desidera personalizzare l'aspetto della descrizione comando.
CMFCToolTipCtrl::SetDescription
Imposta la descrizione che verrà visualizzata dalla descrizione comando.
virtual void SetDescription(const CString strDesrciption);
Parametri
strDesrciption
[in] Testo della descrizione.
Osservazioni:
Il testo della descrizione viene visualizzato nella descrizione comando sotto il separatore.
CMFCToolTipCtrl::SetFixedWidth
void SetFixedWidth(
int nWidthRegular,
int nWidthLargeImage);
Parametri
[in] nWidthRegular
[in] nWidthLargeImage
Osservazioni:
CMFCToolTipCtrl::SetHotRibbonButton
void SetHotRibbonButton(CMFCRibbonButton* pRibbonButton);
Parametri
[in] pRibbonButton
Osservazioni:
CMFCToolTipCtrl::SetLocation
void SetLocation(CPoint pt);
Parametri
[in] Pt
Osservazioni:
CMFCToolTipCtrl::SetParams
Specifica l'aspetto visivo di una descrizione comando utilizzando un oggetto Classe CMFCToolTipInfo.
void SetParams(CMFCToolTipInfo* pParams);
Parametri
pParams
[in] Puntatore a un oggetto classe CMFCToolTipInfo che contiene i parametri di visualizzazione.
Osservazioni:
Ogni volta che viene visualizzata la descrizione comando, viene disegnata usando i colori e gli stili di visualizzazione specificati da pParams . Il valore di pParams viene archiviato nel membro m_Params
protetto , accessibile da una classe derivata che esegue l'override di CMFCToolTipCtrl::OnDrawBorder, CMFCToolTipCtrl::OnDrawIcon, CMFCToolTipCtrl::OnDrawLabel, CMFCToolTipCtrl::OnDrawSeparator o CMFCToolTipCtrl::OnFillBackground per mantenere l'aspetto specificato.
Vedi anche
Grafico della gerarchia
Classi
CToolTipCtrl Class
Classe CTooltipManager
Classe CMFCToolTipInfo
Classe CWinAppEx