如何最小化我的 QMainWindow 而不同时最小化我已取消停靠并 float 的 QDockWidget?我想要做的是使用我的 GUI 的一个小窗口来监视 MainWindow 的其余部分。 MainWindow 不在屏幕上,我只想看到 float 的 DockWidget。
最佳答案
当您的主窗口最小化时,几乎肯定会最小化 float 窗口,因为主窗口拥有子窗口。或者换句话说, float 窗口是主窗口的子。并且子窗口在其所有者窗口最小化时不可见。
解决方案显然是打破你的 float 窗口和主窗口之间的所有权关系。这可能还需要您更改 float 窗口所代表的窗口类型。我猜测 QDockWidget
类实现了 float 工具选项板或其他形式的弹出窗口。为了拥有一个独立的窗口,您需要创建一个重叠的窗口。
阅读有关各种类型窗口的更多信息 here ,至少假设您使用的是 Windows。
我想这对于其他目标操作系统来说也是类似的情况。
特别是在 Windows 上,有人可能会建议您将 float 窗口作为 桌面 窗口的子窗口,但让我借此机会强烈建议您不要这样做。有关更细致的讨论,请参阅 Raymond Chen 的 blog post on the subject .
关于c++ - 当我的 MainWindow 最小化时,Qt QDockWidget(floating) 最小化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6359184/