如何使用C#编写或绘制Windows 7预览区域的控件?有关我正在谈论的示例,请在Windows 7中打开Windows Media Player并播放歌曲。播放歌曲时,尽量减少Windows Media播放器,然后将鼠标悬停在Windows Media Player图标上,您会在实际的媒体播放器预览窗口下方看到一个暂停,后退和快进按钮。我如何在C#中复制这种行为?写入Windows 7“预览”窗口区域
2
A
回答
4
您正在寻找Windows 7 Thumbnail Toolbars:
缩略图工具栏提供了一个迷你 “远程控制”从它的缩略图 机会窗口。例如,要切换到 的下一首歌曲,您不需要 使用笨拙的Media Player桌面乐队 或切换到媒体播放器 应用程序。相反,您可以直接使用 缩略图工具栏执行 此任务,而不必通过跳转到另一个 应用程序来中断您的工作流程 。
从MSDN文章无耻地复制:
//In your window procedure:
switch (msg) {
case g_wmTBC://TaskbarButtonCreated
THUMBBUTTON buttons[2];
buttons[0].dwMask = THB_ICON|THB_TOOLTIP|THB_FLAGS;
buttons[0].iId = 0;
buttons[0].hIcon = GetIconForButton(0);
wcscpy(buttons[0].szTip, L"Tooltip 1");
buttons[0].dwFlags = THBF_ENABLED;
buttons[1].dwMask = THB_ICON|THB_TOOLTIP|THB_FLAGS;
buttons[1].iId = 1;
buttons[1].hIcon = GetIconForButton(1);
wcscpy(buttons[0].szTip, L"Tooltip 2");
buttons[1].dwFlags = THBF_ENABLED;
VERIFY(ptl->ThumbBarAddButtons(hWnd, 2,buttons));
break;
case WM_COMMAND:
if (HIWORD(wParam) == THBN_CLICKED)
{
if (LOWORD(wParam) == 0)
MessageBox(L"Button 0 clicked", ...);
if (LOWORD(wParam) == 1)
MessageBox(L"Button 1 clicked", ...);
}
break;
}
1
因为这有C#的标签,我猜你会喜欢做这在托管代码。请看Windows API Code Pack,其中包括实时缩略图,缩略图按钮,剪辑缩略图,选项卡式缩略图等示例。它是您正在查找的缩略图按钮,两三行代码将负责处理它。
顺便说一下,预览区域是您在Windows资源管理器中获得的内容,当您选择说.txt文件并可以看到右侧的内容时。大多数办公文件都有预览器,你也可以自己写。
相关问题
- 1. 在Windows中更改窗口区域
- 2. 在预览窗口中打开新缓冲区时占用Vim预览窗口的自动关闭缓冲区
- 3. 在Windows 7上写入并行端口
- 4. Windows Phone 7弹出窗口
- 5. WPF窗口实时预览
- 6. Circumvent UIImagePicker预览窗口
- 7. 窗口的查看区域?
- 8. 定义Windows 7预览窗格语法高亮
- 9. 为MDI窗口禁用航空预览
- 10. 获取浏览器窗口内可见区域的大小
- 11. CSS - 限制容器到浏览器窗口(可视区域)
- 12. 未按照预期为Windows 7 + IE8创建Javascript弹出窗口
- 13. Windows 7的悬停预览按钮C#
- 14. Windows 7任务栏预览修改
- 15. 在C中打印预览窗口#
- 16. C#窗口7块输入
- 17. 如何在windows phone 7上从vb.net打开浏览器窗口?
- 18. 如何禁用草稿预览窗口?
- 19. PhpStorm markdown预览窗口 - 字体太小
- 20. 可可限制窗口移动区域?
- 21. 隐藏Windows 7通知区域
- 22. 防止VIM预览窗口从封闭
- 23. 如何修补预览区域
- 24. Vim omnicompletion:可选预览窗口
- 25. WPF:黑色区域在窗口右侧
- 26. 查找并填写在一个领域在浏览器窗口
- 27. 在窗口xp和7中读取和写入窗口注册表
- 28. WPF子窗口 - Windows 7任务栏
- 29. Windows 7中没有边框的窗口
- 30. 更改Windows 7窗口颜色