Share via


Anzeigen von QuickInfos für Schaltflächen

Wenn Sie die TBSTYLE_TOOLTIPS Format angeben, erstellt und verwaltet die Symbolleiste ein QuickInfo-Steuerelement. Das QuickInfo-Steuerelement ist ausgeblendet und wird nur angezeigt, wenn Benutzer den Zeiger über eine Symbolleistenschaltfläche bewegen und es ungefähr eine Sekunde dort lassen.

Ihre Anwendung kann text für das QuickInfo-Steuerelement auf eine der folgenden Arten bereitstellen:

  • Legen Sie den QuickInfotext als iString-Member der TBBUTTON-Struktur für jede Schaltfläche fest. Außerdem müssen Sie eine TB_SETMAXTEXTROWS Nachricht senden und die maximale Textzeile auf 0 festlegen, damit der Text nicht als Schaltflächenbezeichnung und nicht als QuickInfo angezeigt wird.
  • Erstellen Sie die Symbolleiste mit dem TBSTYLE_LIST Stil, und legen Sie dann die TBSTYLE_EX_MIXEDBUTTONS erweiterten Formatvorlage fest. Bezeichnungen werden nur für Schaltflächen angezeigt, die das BTNS_SHOWTEXT Format aufweisen. Für Schaltflächen, die nicht über diesen Stil verfügen, wird eine QuickInfo angezeigt, die den Schaltflächentext enthält.
  • Antworten Sie auf den TTN_GETDISPINFO Benachrichtigungscode.
  • Antworten Sie auf den TBN_GETINFOTIP-Benachrichtigungscode.

Eine Anwendung, die Nachrichten direkt an das QuickInfo-Steuerelement senden muss, kann das Handle für das Steuerelement mithilfe der TB_GETTOOLTIPS-Nachricht abrufen. Eine Anwendung kann das QuickInfo-Steuerelement einer Symbolleiste durch ein anderes QuickInfo-Steuerelement ersetzen, indem sie die TB_SETTOOLTIPS Meldung verwendet.

Die flexibelste Möglichkeit zum Bereitstellen von QuickInfo-Text besteht darin, auf den TTN_GETDISPINFO oder TBN_GETINFOTIP Benachrichtigungscode zu reagieren, der vom Symbolleistensteuerelement in Form einer WM_NOTIFY Nachricht an das übergeordnete Steuerelement gesendet wird. Für TTN_GETDISPINFO enthält der lParam-Parameter einen Zeiger auf eine NMTTDISPINFO-Struktur (auch als LPTOOLTIPTEXT definiert), die den Befehlsbezeichner der Schaltfläche angibt, für die Hilfetext benötigt wird. Dieser Bezeichner befindet sich im NMTTDISPINFO.hdr.idFrom-Member . Eine Anwendung kann den Hilfetext in die Struktur kopieren, die Adresse einer Zeichenfolge angeben, die den Hilfetext enthält, oder den instance Handle und ressourcenbezeichner einer Zeichenfolgenressource angeben.

Wichtige Informationen

Technologien

Voraussetzungen

  • C/C++
  • Programmierung der Windows-Benutzeroberfläche

Anweisungen

Anzeigen einer QuickInfo für eine Schaltfläche

Der folgende Beispielcode verarbeitet den TTN_GETDISPINFO QuickInfo-Benachrichtigungscode, indem Text aus Ressourcenbezeichnern bereitgestellt wird.

case WM_NOTIFY: 
            
    switch (((LPNMHDR) lParam)->code) 
    {
    
    case TTN_GETDISPINFO: 
        { 
            LPTOOLTIPTEXT lpttt = (LPTOOLTIPTEXT)lParam; 
            
            // Set the instance of the module that contains the resource.
            lpttt->hinst = g_hInst; 
            
            UINT_PTR idButton = lpttt->hdr.idFrom;
            
            switch (idButton) 
            { 
            case IDM_NEW: 
                lpttt->lpszText = MAKEINTRESOURCE(IDS_TIPS_NEW); 
                break; 
                
            case IDM_OPEN: 
                lpttt->lpszText = MAKEINTRESOURCE(IDS_TIPS_OPEN); 
                break; 
                
            case IDM_SAVE: 
                lpttt->lpszText = MAKEINTRESOURCE(IDS_TIPS_SAVE); 
                break; 
            } 
            
            break; 
        } 
    }
    return TRUE;

Verwenden von Symbolleistensteuerelementen

Demo allgemeiner Windows-Steuerelemente (CppWindowsCommonControls)