Freigeben über


CMFCToolTipCtrl-Klasse

Eine erweiterte QuickInfo-Implementierung auf Grundlage von CToolTipCtrl Class. Eine QuickInfo auf Grundlage der CMFCToolTipCtrl -Klasse kann ein Symbol, eine Bezeichnung und eine Beschreibung anzeigen. Sie können das Aussehen anpassen, indem Sie einen Farbverlauf, einen benutzerdefinierter Text, Rahmenfarben, fetten Text, abgerundete Ecken oder ein Sprechblasenformat verwenden.

Ausführliche Informationen finden Sie im Quellcode des Ordners VC\atlmfc\src\mfc der Visual Studio-Installation.

Syntax

class CMFCToolTipCtrl : public CToolTipCtrl

Member

Öffentliche Konstruktoren

Name Beschreibung
CMFCToolTipCtrl::CMFCToolTipCtrl Der Standardkonstruktor.

Öffentliche Methoden

Name Beschreibung
CMFCToolTipCtrl::GetIconSize Gibt die Größe eines QuickInfo-Symbols zurück.
CMFCToolTipCtrl::GetParams Gibt die Anzeigeeinstellungen für QuickInfo zurück.
CMFCToolTipCtrl::OnDrawBorder Zeichnet den QuickInfo-Rahmen.
CMFCToolTipCtrl::OnDrawDescription
CMFCToolTipCtrl::OnDrawIcon Zeigt ein QuickInfo-Symbol an.
CMFCToolTipCtrl::OnDrawLabel Gibt die QuickInfo-Bezeichnung an oder berechnet die Bezeichnungsgröße.
CMFCToolTipCtrl::OnDrawSeparator Zeichnet die Trennlinie zwischen der QuickInfo-Bezeichnung und -Beschreibung.
CMFCToolTipCtrl::OnFillBackground Füllt den QuickInfo-Hintergrund.
CMFCToolTipCtrl::SetDescription Legt die von der QuickInfo angezeigte Beschreibung fest.
CMFCToolTipCtrl::SetFixedWidth
CMFCToolTipCtrl::SetHotRibbonButton
CMFCToolTipCtrl::SetLocation
CMFCToolTipCtrl::SetParams Gibt die visuelle Darstellung einer QuickInfo mit einem CMFCToolTipInfo-Objekt an.

Hinweise

CMFCToolTipInfoVerwenden Sie CMFCToolTipCtrlzusammen Objekte der Klasse CTooltipManager, um angepasste QuickInfos in Ihrer Anwendung zu implementieren.

Befolgen Sie die folgenden Schritte, wenn Sie beispielsweise QuickInfo-Sprechblasen verwenden möchten:

  1. Verwenden Sie die CWinAppEx-Klasse-Methode , um den QuickInfo-Manager in Ihrer Anwendung zu initialisieren.

  2. Erstellen Sie eine CMFCToolTipInfo-Struktur, um den gewünschten visuellen Stil anzugeben:

    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);
    
    }
    
  3. Verwenden Sie die CTooltipManager::SetTooltipParams-Methode , um die visuelle Formatvorlage für alle QuickInfos in der Anwendung mithilfe der im CMFCToolTipInfo Objekt definierten Formatvorlagen festzulegen:

    theApp.GetTooltipManager ()->SetTooltipParams (AFX_TOOLTIP_TYPE_ALL,
        RUNTIME_CLASS (CMFCToolTipCtrl), &params);
    

Zum Steuern des QuickInfo-Verhaltens und -Renderings können Sie auch eine neue Klasse von CMFCToolTipCtrl ableiten. Verwenden Sie zum Angeben einer neuen QuickInfo-Steuerelementklasse die CTooltipManager::SetTooltipParams-Methode:

myApp.GetTooltipManager ()->SetTooltipParams (AFX_TOOLTIP_TYPE_ALL,
    RUNTIME_CLASS (CMyToolTipCtrl))

Legen Sie zum Wiederherstellen der standardmäßigen QuickInfo-Steuerelementklasse und zum Zurücksetzen des QuickInfo-Formats auf die Standardeinstellung die Laufzeitklasse und die QuickInfo-Parameter von SetTooltipParams auf NULL fest.

theApp.GetTooltipManager ()->SetTooltipParams (AFX_TOOLTIP_TYPE_ALL,
    NULL,
    NULL);

Beispiel

Im folgenden Beispiel wird veranschaulicht, wie Sie ein CMFCToolTipCtrl-Objekt erstellen, die von der QuickInfo angezeigte Beschreibung und die Breite des Tooltip-Steuerelements festlegen können.

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);

Vererbungshierarchie

CObject

CCmdTarget

CWnd

CToolTipCtrl

CMFCToolTipCtrl

Anforderungen

Header: afxtooltipctrl.h

CMFCToolTipCtrl::CMFCToolTipCtrl

CMFCToolTipCtrl(CMFCToolTipInfo* pParams = NULL);

Parameter

[in] pParams

Hinweise

CMFCToolTipCtrl::GetIconSize

Gibt die Größe eines QuickInfo-Symbols zurück.

virtual CSize GetIconSize();

Rückgabewert

Die Größe des Symbols in Pixel.

CMFCToolTipCtrl::GetParams

Gibt die Anzeigeeinstellungen für QuickInfo zurück.

const CMFCToolTipInfo& GetParams() const;

Rückgabewert

Die aktuellen QuickInfo-Anzeigeeinstellungen, die in einem CMFCToolTipInfo-Klassenobjekt gespeichert sind.

CMFCToolTipCtrl::OnDrawBorder

Zeichnet den QuickInfo-Rahmen.

virtual void OnDrawBorder(
    CDC* pDC,
    CRect rect,
    COLORREF clrLine);

Parameter

pDC
[in] Zeiger auf einen Gerätekontext.

rect
[in] Das umgebende Rechteck der QuickInfo.

clrLine
[in] Rahmenfarbe.

Hinweise

Überschreiben Sie diese Methode in einer abgeleiteten Klasse, um die Darstellung des QuickInfo-Rahmens anzupassen.

CMFCToolTipCtrl::OnDrawDescription

virtual CSize OnDrawDescription(
    CDC* pDC,
    CRect rect,
    BOOL bCalcOnly);

Parameter

[in] pDC
[in] rect
[in] bCalcOnly

Rückgabewert

Bemerkungen

CMFCToolTipCtrl::OnDrawIcon

Zeigt ein QuickInfo-Symbol an.

virtual BOOL OnDrawIcon(
    CDC* pDC,
    CRect rectImage);

Parameter

pDC
[in] Ein Zeiger auf einen Gerätekontext.

rectImage
[in] Koordinaten des Symbols.

Rückgabewert

TRUE, wenn das Symbol gezeichnet wurde. Andernfalls FALSE.

Hinweise

Überschreiben Sie diese Methode in einer abgeleiteten Klasse, um ein benutzerdefiniertes Symbol anzuzeigen. Sie müssen auch CMFCToolTipCtrl::GetIconSize überschreiben, damit die QuickInfo das Layout von Text und Beschreibung ordnungsgemäß berechnet.

CMFCToolTipCtrl::OnDrawLabel

Gibt die QuickInfo-Bezeichnung an oder berechnet die Bezeichnungsgröße.

virtual CSize OnDrawLabel(
    CDC* pDC,
    CRect rect,
    BOOL bCalcOnly);

Parameter

pDC
[in] Ein Zeiger auf einen Gerätekontext.

rect
[in] Umgebendes Rechteck des Beschriftungsbereichs.

bCalcOnly
[in] Wenn WAHR, wird die Beschriftung nicht gezeichnet.

Rückgabewert

Größe der Beschriftung in Pixel.

Hinweise

Überschreiben Sie diese Methode in einer abgeleiteten Klasse, wenn Sie die Darstellung der QuickInfo-Bezeichnung anpassen möchten.

CMFCToolTipCtrl::OnDrawSeparator

Zeichnet die Trennlinie zwischen der QuickInfo-Bezeichnung und -Beschreibung.

virtual void OnDrawSeparator(
    CDC* pDC,
    int x1,
    int x2,
    int y);

Parameter

pDC
[in] Ein Zeiger auf einen Gerätekontext.

x1
[in] Horizontale Koordinate des linken Endes des Trennzeichens.

x2
[in] Horizontale Koordinate des rechten Endes des Trennzeichens.

Y
[in] Vertikale Koordinate des Trennzeichens.

Hinweise

Die Standardimplementierung zeichnet eine Linie vom Punkt (x1, y) bis zum Punkt (x2, y).

Überschreiben Sie diese Methode in einer abgeleiteten Klasse, um die Darstellung des Trennzeichens anzupassen.

CMFCToolTipCtrl::OnFillBackground

Füllt den QuickInfo-Hintergrund.

virtual void OnFillBackground(
    CDC* pDC,
    CRect rect,
    COLORREF& clrText,
    COLORREF& clrLine);

Parameter

pDC
[in] Ein Zeiger auf einen Gerätekontext.

rect
[in] Gibt das umgebende Rechteck des zu füllenden Bereichs an.

clrText
[in] QuickInfo-Vordergrundfarbe.

clrLine
[in] Farbe der Rahmen und der Trennlinie zwischen Beschriftung und Beschreibung.

Hinweise

Die Standardimplementierung füllt das Rechteck aus, das durch Rechteck mit der Farbe oder dem Muster angegeben wird, die durch den letzten Aufruf von CMFCToolTipCtrl::SetParams angegeben wird.

Überschreiben Sie diese Methode in einer abgeleiteten Klasse, wenn Sie die Darstellung der QuickInfo anpassen möchten.

CMFCToolTipCtrl::SetDescription

Legt die von der QuickInfo angezeigte Beschreibung fest.

virtual void SetDescription(const CString strDesrciption);

Parameter

strDesrciption
[in] Beschreibungstext.

Hinweise

Der Beschreibungstext wird auf der QuickInfo unter dem Trennzeichen angezeigt.

CMFCToolTipCtrl::SetFixedWidth

void SetFixedWidth(
    int nWidthRegular,
    int nWidthLargeImage);

Parameter

[in] nWidthRegular
[in] nWidthLargeImage

Hinweise

CMFCToolTipCtrl::SetHotRibbonButton

void SetHotRibbonButton(CMFCRibbonButton* pRibbonButton);

Parameter

[in] pRibbonButton

Hinweise

CMFCToolTipCtrl::SetLocation

void SetLocation(CPoint pt);

Parameter

[in] Pt

Hinweise

CMFCToolTipCtrl::SetParams

Gibt die visuelle Darstellung einer QuickInfo mithilfe eines CMFCToolTipInfo-Klassenobjekts an.

void SetParams(CMFCToolTipInfo* pParams);

Parameter

pParams
[in] Zeigen Sie auf ein CMFCToolTipInfo-Klassenobjekt , das die Anzeigeparameter enthält.

Hinweise

Immer wenn die QuickInfo angezeigt wird, wird sie mithilfe der Farben und visuellen Formatvorlagen gezeichnet, die pParams angibt. Der Wert von pParams wird im geschützten Element m_Paramsgespeichert, auf das von einer abgeleiteten Klasse zugegriffen werden kann, die CMFCToolTipCtrl::OnDrawBorder, CMFCToolTipCtrl::OnDrawIcon, CMFCToolTipCtrl::OnDrawLabel, CMFCToolTipCtrl::OnDrawSeparator oder CMFCToolTipCtrl::OnFillBackground zur Erhaltung der angegebenen Darstellung verwendet.

Siehe auch

Hierarchiediagramm
Klassen
CToolTipCtrl Class
CTooltipManager-Klasse
CMFCToolTipInfo-Klasse
CWinAppEx-Klasse