我想在Qt 4.8中创建一个对话框,它不阻塞父对话框,但在打开时保持在父对话框的顶部。
目前为止我尝试的是:
父级
下面的代码完全符合我在Gnome上的要求,但在Windows/Mac上,当主窗口获得焦点时,对话框会转到后面:
QMainWindow* window = new QMainWindow();
QDialog* dialog = new QDialog( window );
window->show();
dialog->show();
永远在最上面
也有可能使对话框总是在顶部,但我不认为我的应用程序对用户如此重要,以至于他希望它甚至在其他应用程序的顶部:
dialog->setWindowFlags( dialog->windowFlags() | Qt::WindowStaysOnTopHint );
模态对话框
也可以创建窗口模式对话框,但是当对话框打开时,会阻碍用户与主窗口的交互。
dialog->setWindowModality( Qt::WindowModal );
Dock widget
一个dock小部件做了它应该做的事情,但它也是dock,看起来不像一个对话框。
我在找什么?
1条答案
按热度按时间o2gm4chl1#
我认为你正在寻找的是无模式的工具窗口。
摘自QT文档,这是Qt::Tool标志的含义: