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 |
関連項目
ITaskbarList3::ThumbBarAddButtons