質問

今日は、サムネイルツールバーまたはAero Peekツールバーと呼ばれるWindows 7の新機能に関する別の具体的な質問があります。アプリケーションごとに独自のアイコンと動作を持つ各ボタンのツールバーボタンの新しいセットを作成できましたが、新しいTHUMBUTTON構造ではアクションパラメーターが指定されていないため、新しいボタンに機能を追加できませんでしたボタンオブジェクト。

ボタンの作成に使用したコードを示すコードスニペットを次に示します。

ITaskbarList4* pitskbar;
HRESULT hr = CoInitialize(NULL);
hr = CoCreateInstance(CLSID_TaskbarList, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&pitskbar));


HWND hwnd = AfxGetMainWnd()->GetSafeHwnd();

DWORD dwMask = THB_BITMAP | THB_FLAGS;

THUMBBUTTON thbButtons[3];
thbButtons[0].dwMask = (THUMBBUTTONMASK)dwMask;
thbButtons[0].iId = 0;
thbButtons[0].iBitmap = 0;
thbButtons[0].dwFlags = THBF_ENABLED;

thbButtons[1].dwMask = (THUMBBUTTONMASK)dwMask;
thbButtons[1].iId = 1;

    .
    .
   <More Button Params>
    .
    .

CImageList m_imglst;
m_imglst.Create(16, 16, ILC_COLOR16, 0, 4);

HICON icon = (HICON)::LoadImage(theApp.m_hInstance, MAKEINTRESOURCE(IDI_ICON_ON), IMAGE_ICON, 16, 16, LR_SHARED);
m_imglst.Add(icon);

    .
    .
   <More Images>
    .
    .

hr = pitskbar->ThumbBarSetImageList(hwnd, m_imglst);

if (SUCCEEDED(hr))
{

    hr = pitskbar->ThumbBarAddButtons(hwnd, ARRAYSIZE(thbButtons), thbButtons);
}



pitskbar->Release();

質問の文脈にある限り、役に立つ回答をいただければ幸いです。

よろしく

役に立ちましたか?

解決

これはあなたが探しているものですか? &quot;サムネイルツールバーのボタンがクリックされると、そのサムネイルに関連付けられたウィンドウに、wParamパラメーターのHIWORDがTHBN_CLICKEDに設定され、LOWORDがボタンIDに設定されたWM_COMMANDメッセージが送信されます。 ソース: http://msdn.microsoft.com/en -us / library / dd391703(VS.85).aspx

他のヒント

ここはマネージドラッパーを使用してそれを行う方法に関する記事です...マネージドラッパーを見ると、C ++を使用してそれを行う方法をより簡単に見ることができます...

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top