Windows 7 缩略图工具栏按钮

Windows 7 缩略图工具栏按钮,windows-7,toolbar,thumbnails,aero,peek,Windows 7,Toolbar,Thumbnails,Aero,Peek,今天,我有另一个关于Windows7中的一个新功能的具体问题,称为缩略图工具栏或AeroPeek工具栏,如果有人愿意这样称呼它的话。我已经能够为我的应用程序创建一组新的工具栏按钮,每个按钮都有其独特的图标和行为,但我无法向新按钮添加功能,因为新的拇指按钮结构没有为按钮对象指定任何操作参数 下面是一段代码片段,向您展示我用来创建按钮的内容: ITaskbarList4* pitskbar; HRESULT hr = CoInitialize(NULL); hr = CoCreateInstance

今天,我有另一个关于Windows7中的一个新功能的具体问题,称为缩略图工具栏或AeroPeek工具栏,如果有人愿意这样称呼它的话。我已经能够为我的应用程序创建一组新的工具栏按钮,每个按钮都有其独特的图标和行为,但我无法向新按钮添加功能,因为新的拇指按钮结构没有为按钮对象指定任何操作参数

下面是一段代码片段,向您展示我用来创建按钮的内容:

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();
ITaskbarList4*pitskbar;
HRESULT hr=协同初始化(NULL);
hr=CoCreateInstance(CLSID_TaskbarList,NULL,CLSCTX_INPROC_SERVER,IID_PPV_ARGS(&pitskbar));
HWND HWND=AfxGetMainWnd()->GetSafeHwnd();
DWORD dwMask=THB|U位图| THB|U标志;
拇指按钮[3];
thbButtons[0].dwMask=(THUMBBUTTONMASK)dwMask;
thbButtons[0].iId=0;
thbButtons[0]。iBitmap=0;
thbButtons[0]。dwFlags=THBF_已启用;
thbButtons[1].dwMask=(THUMBBUTTONMASK)dwMask;
thbButtons[1]。iId=1;
.
.
.
.
cimagelistm_imglst;
m_imglst.Create(16,16,ILC_COLOR16,0,4);
HICON图标=(HICON)::加载图像(app.m_hInstance,MAKEINTRESOURCE(IDI_图标打开),图像图标,16,16,LR_共享);
m_imglst.Add(图标);
.
.
.
.
hr=pitskbar->thumbsbarsetimagelist(hwnd,m_imglst);
如果(成功(hr))
{
hr=pitskbar->thumbbaraddbutions(hwnd,ARRAYSIZE(thbbbuttons),thbbbuttons);
}
pitskbar->Release();
只要是在问题的背景下,我将非常感谢任何有帮助的回答


“问候”

是一篇关于如何使用托管包装器进行此操作的文章。。。通过查看托管包装,您可以更容易地看到如何使用C++……/P> < P>来做这件事。 单击缩略图工具栏中的按钮时,与该缩略图关联的窗口将发送一条WM_命令消息,其中wParam参数的HIWORD设置为THBN_clicked,LOWORD设置为按钮ID 资料来源: