c++ - 当我的 MainWindow 最小化时,Qt QDockWidget(floating) 最小化

标签 c++ qt

如何最小化我的 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/

相关文章:

c++ - 如何在 C++ 中使用括号语法初始化 POD 数组?

c++ - 将非托管 C++ 代码编译为托管代码

c++ - 枚举器中的按位运算

android - 使用 NDK 在 Android 上进行本地化/本地化

c++ - 将 QDomDocument 数据用作文本的更好方法

linux - 如何在 Linux 上临时捕获我自己进程的标准输出?

c++ - Qt 5.4 应用程序可以在 pre win7 中调试吗

c++ - 在 Windows 中部署 Qt 应用程序

python - python中的变量方法名称

c++ - Qt 中的多线程有问题吗?