次の方法で共有


ITaskbarList3::ThumbBarSetImageList メソッド (shobjidl_core.h)

タスク バーボタンポップアップのウィンドウのサムネイル画像に埋め込まれたツールバーのボタン画像を含む画像リストを指定します。

構文

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

パラメーター

[in] hwnd

型: HWND

更新するツール バーがサムネイル表示されているウィンドウのハンドル。 このハンドルは、呼び出し元のプロセスに属している必要があります。

[in] himl

種類: HIMAGELIST

ツール バーで使用されるすべてのボタン イメージを含むイメージ リストのハンドル。

戻り値

種類: HRESULT

このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。

解説

アプリケーションでは、次のボタン イメージを提供する必要があります。

  • 既定のアクティブな状態のボタン。
  • 高 dpi (1 インチあたりのドット数) ディスプレイでの使用に適した画像。

イメージは 32 ビットで、ディメンション GetSystemMetrics(SM_CXICON) x GetSystemMetrics(SM_CYICON) である必要があります。 ツール バー自体には、ボタンのクリック状態、無効状態、ホバー状態のビジュアルが表示されます。

次の例は、画像リストから画像を取得する 2 つのボタンを含むサムネイル ツール バーを作成する方法を示しています。


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

要件

   
サポートされている最小のクライアント Windows 7 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー shobjidl_core.h (Shobjidl.h を含む)
Library Explorerframe.lib
[DLL] Explorerframe.dll

関連項目

ITaskbarList

ITaskbarList2

ITaskbarList3

ITaskbarList3::ThumbBarAddButtons

ITaskbarList3::ThumbBarUpdateButtons

タスク バー拡張機能