ITaskbarList3::ThumbBarSetImageList-Methode (shobjidl_core.h)

Gibt eine Bildliste an, die Schaltflächenbilder für eine Symbolleiste enthält, die in ein Miniaturbild eines Fensters in einem Flyout der Taskleistenschaltfläche eingebettet ist.

Syntax

HRESULT ThumbBarSetImageList(
  [in] HWND       hwnd,
  [in] HIMAGELIST himl
);

Parameter

[in] hwnd

Typ: HWND

Das Handle des Fensters, dessen Miniaturansicht die zu aktualisierende Symbolleiste enthält. Dieses Handle muss zum aufrufenden Prozess gehören.

[in] himl

Typ: HIMAGELIST

Das Handle der Bildliste, die alle Schaltflächenbilder enthält, die auf der Symbolleiste verwendet werden sollen.

Rückgabewert

Typ: HRESULT

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

Hinweise

Anwendungen müssen die folgenden Schaltflächenbilder bereitstellen:

  • Die Schaltfläche im aktiven Standardzustand.
  • Bilder, die für die Verwendung mit Displays mit hoher DPI-Auflösung (Punkt pro Zoll) geeignet sind.

Bilder müssen 32-Bit und die Dimensionen GetSystemMetrics(SM_CXICON) x GetSystemMetrics(SM_CYICON) aufweisen. Die Symbolleiste selbst stellt Visuals für den Klick-, Deaktiviert- und Hoverstatus einer Schaltfläche bereit.

Beispiele

Das folgende Beispiel zeigt, wie Sie eine Miniaturansichtssymbolleiste mit zwei Schaltflächen erstellen, deren Bilder aus einer Bildliste stammen.


HRESULT AddThumbarButtons(HWND hwnd, HIMAGELIST himl, HIMAGELIST himlHot)
{
    // Define an array of two buttons. These buttons provide images through an 
    // image list and also provide tooltips.
    DWORD dwMask = THB_BITMAP | THB_TOOLTIP | THB_FLAGS;
    
    THUMBBUTON thbButtons[2];
    thbButtons[0].dwMask = dwMask;
    thbButtons[0].iId = 0;
    thbButtons[0].iBitmap = 0;
    thbButtons[0].pszTip = TEXT("Button 1");
    thbButtons[0].dwFlags = THBF_DISMISSONCLICK;

    dwMask = THB_BITMAP | THB_TOOLTIP;
    thbButtons[1].dwMask = dwMask;
    thbButtons[1].iId = 1;
    thbButtons[1].iBitmap = 1;
    thbButtons[1].pszTip = TEXT("Button 2");
    
    // Create an instance of ITaskbarList3
    ITaskBarList3 *ptbl;
    HRESULT hr = CoCreateInstance(CLSID_TaskbarList, 
                                  NULL, 
                                  CLSCTX_INPROC_SERVER, 
                                  IID_PPV_ARGS(&ptbl);

    if (SUCCEEDED(hr))
    {
        // Declare the image list that contains the button images.
        hr = ptbl->ThumbBarSetImageList(hwnd, himl);
        
        if (SUCCEEDED(hr))
        {
            // Attach the toolbar to the thumbnail.
            hr = ptbl->ThumbBarAddButtons(hwnd, ARRAYSIZE(thbButtons), &thbButtons);
        }
        ptbl->Release();
    }
    return hr;
}

Anforderungen

   
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::ThumbBarUpdateButtons

Taskleistenerweiterungen