【发布时间】:2014-12-06 14:04:16
【问题描述】:
如何使 Qt 对话框窗口始终位于应用程序级别的顶部?
我想让一个对话窗口始终在前面,但在我的应用程序级别上始终记住在前面,即使我点击一个空白的地方,我也希望它只停留在我的应用程序的前面。
我曾尝试使用setWindowFlags(Qt::WindowStaysOnTopHint),但这会使对话框窗口始终位于桌面级别的顶部,但我希望它仅在我的应用程序级别位于顶部。
我该怎么做?
【问题讨论】:
-
尝试在对话框中设置 Qt::Dialog 或 Qt::Window 标志(使用 setWindowsFlags 方法)
-
@Chernobyl:我在对话窗口中使用了
setWindowFlags(Qt::Tool)。 -
那么你应该将Parent设置为这个窗口。 From doc:表示该小部件是一个工具窗口。工具窗口通常是一个小窗口,具有比通常的标题栏和装饰更小的窗口,通常用于工具按钮的集合。如果有父级,则工具窗口将始终保留在其顶部。如果没有父级,您也可以考虑使用 Qt::WindowStaysOnTopHint。
-
@Chernobyl:您的话正确,设置父级是问题(
+1供您发表评论)。谢谢
标签: c++ qt qt5 qdialog always-on-top