Qt MainWindow 忽略宽度、高度和标题属性

Posted

技术标签:

【中文标题】Qt MainWindow 忽略宽度、高度和标题属性【英文标题】:Qt MainWindow ignores width, height and title properties 【发布时间】:2017-04-08 17:36:30 【问题描述】:

我在我的 Windows 10 机器上使用 Qt Creator 创建了一个简单的 Qt Widgets 应用程序。我使用 ui 文件和设计器来更改我的 QMainWindow 的属性,但是当我在设计器中设置它们时,宽度、高度和 windowTitle 属性不知何故不起作用。示例:

但是,生成的应用程序如下所示:

size 和 windowTitle 似乎都被忽略了。我也尝试过从代码中设置属性,像这样(但无济于事):

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)

    ui->setupUi(this);
    setWindowTitle("That's some title you've got there");

我还向 centralWidget 添加了一个布局,但这只对子控件有影响,而不是实际的窗口本身(这似乎合乎逻辑)。

【问题讨论】:

【参考方案1】:

通常,它应该可以工作。

如果以下最小示例对您有用,您可以试试吗?

#include <QApplication>
#include <QMainWindow>

main(int argc, char *argv[])

  QApplication a(argc, argv);
  QMainWindow m;
  m.setWindowTitle("TEST");
  m.show ();
  a.exec();

【讨论】:

这似乎也不起作用,windowTitle 只是默认为项目名称(我只是创建了一个新的小部件应用程序并按照您的建议在 main.cpp 中添加了该行)我确实找到了 'windowFilePath ' 在文档中,但这也没有效果。 也许你应该在你的问题中指定你的 qt 版本。我在 Ubuntu 16.04 上使用 Qt 5.8 对其进行了测试。 您的评论为我指明了正确的方向。我将 Qt 5.7 用于 WinRT。我切换到 5.8 MSVC 2015,问题就消失了。

以上是关于Qt MainWindow 忽略宽度、高度和标题属性的主要内容,如果未能解决你的问题,请参考以下文章

如何设置用户控件的高度和宽度

VoiceOver 是不是总是忽略宽度和高度为零的 iOS 视图?

圆形进度指示器忽略宽度/高度属性并且不缩放

获取Window WPF的高度/宽度

WPF Prism 对话框窗口 - 绑定到 DialogWindow 的宽度和高度

Qt 浅析QFontMetrics 获取字体宽度,高度