我正在寻找一种在 Qt 中约束其他应用程序窗口(有些不是 Qt)的方法,以便在最大化时不会与我的 Qt 应用程序重叠。本质上我想创建 Windows 任务栏。我希望应用程序边缘停靠到我的 Qt 任务栏的适当边缘,就像应用程序在最大化时停靠到 Windows 任务栏一样。我设想这个任务栏存在于屏幕的顶部边缘,但希望允许用户决定它将存在于哪个边缘。
我知道制作一个始终位于顶部的窗口并不难,这更像是我很难弄清楚的自动对接问题。
我现在只希望在 Windows 上实现这一点。
感谢您的帮助。
关于如何做到这一点的详细解释对于这里的答案来说太长了,但是SHAppBarMessage上的 MSDN 文档应该可以帮助您入门。这样创建的任务栏甚至可以成为 Windows 任务栏的一部分;)