有一些免费软件工具(例如,Taskbar Shuffle、XNeat 等)能够更改任务栏上按钮的顺序,而无需实际关闭或打开任何窗口。不幸的是,它们似乎都不是开源的。

更改任务栏中按钮的顺序需要哪些 API 调用?

有帮助吗?

解决方案

答案是使用 TB_MOVEBUTTON 在通话中 SendMessage(), ,如中所述 WinAPI 文档在这里.

第一个参数为 SendMessage() (hWndControl) 需要是对包含任务栏按钮的工具栏的引用。检索起来并不简单,但是 代码项目入口 Chris Clarke 的答案中提到的包含检索此句柄所需的所有代码。

wParamlParam 需要分别设置为要移动的按钮的按钮ID和要移动到的位置。这些 ID 是 idCommand 领域中的 TBBUTTON 代表每个按钮的结构;如何检索按钮的这些结构也可以从上面获取 代码项目入口.

其他提示

这在Windows API不公开的方法来重新排列任务栏按钮的事实是故意的。有没有支持的方法做到这一点。

请参阅一文(和那些它链接到)背后为什么外壳开发商不公开此功能的想法。

然而,的足智多谋的人已经设计出黑客的做到这一点(见其他答案)。我怀疑这些方法将土崩瓦解随着Windows的发展(Windows 7中,64位等)。当这些技术停止工作,请不要惊讶。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top