在QDialog上设置Windows标志会隐藏表单

时间:2014-05-02 04:37:40

标签: c++ qt

我目前有一个继承自QDialog的表单。 现在,为了隐藏表单上的?图标,我在构造函数中执行类似的操作。

foo::foo(QWidget *parent): QDialog(parent)
{
    .....
    this->setWindowFlags(Qt::WindowTitleHint);
}

问题在于对话框没有出现。如果我省略它出现的标志线。我正在使用QT 5.1.1

3 个答案:

答案 0 :(得分:1)

最终你要打电话

this->setWindowFlags(this->windowFlags() | Qt::WindowTitleHint);

答案 1 :(得分:1)

要回答问题,请在此处找到解决方法:

setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);

如果需要最小化和最大化选项,请执行以下操作:

setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint) | Qt::WindowMaximizeButtonHint | Qt::WindowMinimizeButtonHint);

答案 2 :(得分:0)

要使其在Linux上正常工作,我必须同时使用上述两个选项:

setFixedSize(width(), height());
setWindowFlags(Qt::Drawer);

结果是只有一个关闭按钮的对话框。