c++ - Qt显示/显示/提升窗口的正确方法

标签 c++ qt pyqt4

我经常发现我需要展示一个窗口并将其放在前面。例如,当用户尝试重新加载同一个文档时,我只是调出旧文档。为此,我有这样的代码:

widget->raise();
widget->activateWindow();
widget->showNormal();

我开始觉得我缺少一个快捷功能。当然,这种行为很常见。是否有一些首选功能可以完成上述所有工作和/或只在每个目标操作系统上做正确的事情?


注意:我刚刚注意到一个缺陷,因此特殊功能现在更加重要。如果窗口被最小化,activateWindow 不起作用。即使您先将上述内容重新排序为 showNormal,也会发生这种情况。

最佳答案

这是一个有效的“捷径”:

widget->setWindowState(Qt::WindowActive) ;

您可以将它与窗口的最后一个 Qt::WindowState 结合使用。 这个符号虽然不是很明确。

关于c++ - Qt显示/显示/提升窗口的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7817334/

相关文章:

c++ - 在 Qt 中使用多个 Ui 和 Ui 类?

python - 如何在 PyQt 中为 Qt-Designer Widget 实现 MousePressEvent

c++ - 如何从 ID3D11Texture2D 访问像素数据?

c++ - 两个看似相似的函数给出了不同的结果。为什么?

javascript - Qt QML Javascript 是如何管理内存的?

python - PyQt4:信号槽机制无法正常工作 'List of buttons'

python - PyQt QVBoxLayout 在底部添加元素

C++ 和 SDL2 - "Auto-Generate"使用了 DLL?

c++ - 从二进制文件中获取源文件(和位置)列表

c++ - Qt 对话框窗口禁用 alwaysontop 导致窗口关闭