Qt MainWindow игнорирует свойства ширины, высоты и заголовка

Я создал простое приложение Qt Widgets с помощью Qt Creator на своем компьютере с Windows 10. Я использую файл пользовательского интерфейса и дизайнер для изменения свойств моего QMainWindow, но почему-то свойства ширины, высоты и окнаTitle не действуют, когда я устанавливаю их в дизайнере. Пример:

Дизайнерский вид

Однако результирующее приложение выглядит так:

введите здесь описание изображения

И 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, но это повлияло только на дочерние элементы управления, а не на само окно (и это кажется логичным).


person diggingforfire    schedule 08.04.2017    source источник


Ответы (1)


В норме должно работать.

Можете ли вы попробовать, если следующий минимальный пример работает для вас?

#include <QApplication>
#include <QMainWindow>

main(int argc, char *argv[])
{
  QApplication a(argc, argv);
  QMainWindow m;
  m.setWindowTitle("TEST");
  m.show ();
  a.exec();
}
person m7913d    schedule 08.04.2017
comment
Похоже, это тоже не работает, по умолчанию для windowTitle просто используется имя проекта (я просто создал новое приложение Widgets и добавил строку в main.cpp, как вы предложили). Я нашел «windowFilePath» в документации, но это не имеет эффект же. - person diggingforfire; 08.04.2017
comment
Возможно, вам следует указать свою версию qt в своем вопросе. Я тестировал его с Qt 5.8 на Ubuntu 16.04. - person m7913d; 08.04.2017
comment
Ваш комментарий указал мне правильное направление. Я использовал Qt 5.7 для WinRT. Я перешел на 5.8 MSVC 2015, и проблема исчезла. - person diggingforfire; 09.04.2017