ITaskbarList3::ThumbBarUpdateButtons-Methode (shobjidl_core.h)

Zeigt Schaltflächen in einer Miniaturansichtssymbolleiste an, aktiviert, deaktiviert oder blendet sie aus, wie es für den aktuellen Zustand des Fensters erforderlich ist. Eine Miniaturansichtssymbolleiste ist eine Symbolleiste, die in ein Miniaturbild eines Fensters in einem Flyout der Taskleistenschaltfläche eingebettet ist.

Syntax

HRESULT ThumbBarUpdateButtons(
  [in] HWND          hwnd,
  [in] UINT          cButtons,
  [in] LPTHUMBBUTTON pButton
);

Parameter

[in] hwnd

Typ: HWND

Das Handle des Fensters, dessen Miniaturansicht die Symbolleiste enthält.

[in] cButtons

Typ: UINT

Die Anzahl von Schaltflächen, die im Array definiert sind, auf das von pButton verwiesen wird. Die maximal zulässige Anzahl von Schaltflächen beträgt 7. Dieses Array enthält nur Strukturen, die vorhandene Schaltflächen darstellen, die aktualisiert werden.

[in] pButton

Typ: LPTHUMBBUTTON

Ein Zeiger auf ein Array von THUMBBUTTON-Strukturen . Jedes THUMBBUTTON definiert eine einzelne Schaltfläche. Wenn die Schaltfläche bereits vorhanden ist (der iId-Wert ist bereits definiert), wird diese vorhandene Schaltfläche mit den in der -Struktur bereitgestellten Informationen aktualisiert.

Rückgabewert

Typ: HRESULT

Wenn diese Methode erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.

Hinweise

Da es einen begrenzten Platz gibt, in dem Miniaturansichten angezeigt werden können, sowie eine sich ständig ändernde Anzahl von Miniaturansichten, die angezeigt werden sollen, wird für Anwendungen keine bestimmte Symbolleistengröße garantiert. Wenn der Anzeigeraum gering ist, werden die Schaltflächen in der Symbolleiste nach Bedarf von rechts nach links abgeschnitten. Aus diesem Grund sollte eine Anwendung die Befehle priorisieren, die ihren Schaltflächen zugeordnet sind, um sicherzustellen, dass die Befehle mit der höchsten Priorität links liegen und daher am wenigsten wahrscheinlich abgeschnitten werden.

Miniaturansichtssymbolleisten werden nur angezeigt, wenn Miniaturansichten auf der Taskleiste angezeigt werden. Wenn eine Taskleistenschaltfläche für instance eine Gruppe mit mehr geöffneten Fenstern darstellt, als Es Platz zum Anzeigen von Miniaturansichten gibt, wird die Benutzeroberfläche auf ein Legacymenü und nicht auf Miniaturansichten zurückgesetzt.

Beispiele

Das folgende Beispiel zeigt, wie Sie thumbBarUpdateButtons verwenden, um text und bild auf einer vorhandenen Schaltfläche in einer Miniaturansichtsymbolleiste auf der erweiterten Taskleiste zu ändern.

HRESULT UpdateThumbarButton(HWND hwnd)
{
    // Define a single structure for the button to update. The ID is that
    // of an existing button, so the other information (bitmap index and 
    // tooltip) overwrites the existing values, updating the button.
    THUMBBUTON thbButton;
    thbButton.dwMask = THB_BITMAP | THB_TOOLTIP;
    thbButtons[0].iId = 1;
    thbButton.iBitmap = 3;
    thbButton.pszTip = TEXT("Different Text");
    
    // Create an instance of ITaskbarList3
    ITaskBarList3 *ptbl;
    HRESULT hr = CoCreateInstance(CLSID_TaskbarList, 
                                  NULL, 
                                  CLSCTX_INPROC_SERVER, 
                                  IID_PPV_ARGS(&ptbl);

    if (SUCCEEDED(hr))
    {
        // Update the toolbar. In this case, only the single button is updated.
        hr = ptbl->ThumbBarUpdateButtons(hwnd, 1, &thbButton);
        ptbl->Release();
    }
    return hr;
}

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile shobjidl_core.h (shobjidl.h einschließen)
Bibliothek Explorerframe.lib
DLL Explorerframe.dll

Weitere Informationen

ITaskbarList

ITaskbarList2

ITaskbarList3

ITaskbarList3::ThumbBarAddButtons

ITaskbarList3::ThumbBarSetImageList

Taskleistenerweiterungen