Невозможно инициализировать параметр типа QMainWindow: ошибка ui->setupUi(this)

Что не так, помогите исправить ошибку

#include "TaskDialog.h"
#include "ui_TaskDialog.h"

TaskDialog::TaskDialog(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::TaskDialog) {
    ui->setupUi(this);
}

TaskDialog::~TaskDialog() {
    delete ui;
}

Task TaskDialog::getTask() const {
    Task task;
    task.title = ui->titleEdit->text();
    task.description = ui->descriptionEdit->toPlainText();
    task.dueDate = ui->dueDateEdit->date();
    task.priority = ui->priorityComboBox->currentIndex();
    task.status = ui->statusCheckBox->isChecked();
    return task;
}

void TaskDialog::setTask(const Task &task) {
    ui->titleEdit->setText(task.title);
    ui->descriptionEdit->setPlainText(task.description);
    ui->dueDateEdit->setDate(task.dueDate);
    ui->priorityComboBox->setCurrentIndex(task.priority);
    ui->statusCheckBox->setChecked(task.status);
}
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
 <class>TaskDialog</class>
 <widget class="QMainWindow" name="TaskDialog">
  <property name="geometry">
   <rect>
    <x>0</x>
    <y>0</y>
    <width>800</width>
    <height>600</height>
   </rect>
  </property>
  <property name="windowTitle">
   <string>TaskDialog</string>
  </property>
  <widget class="QWidget" name="centralwidget">
   <widget class="QDateEdit" name="dueDateEdit">
    <property name="geometry">
     <rect>
      <x>410</x>
      <y>40</y>
      <width>110</width>
      <height>27</height>
     </rect>
    </property>
   </widget>
   <widget class="QCheckBox" name="statusCheckBox">
    <property name="geometry">
     <rect>
      <x>420</x>
      <y>90</y>
      <width>92</width>
      <height>24</height>
     </rect>
    </property>
    <property name="text">
     <string>CheckBox</string>
    </property>
   </widget>
   <widget class="QComboBox" name="priorityComboBox">
    <property name="geometry">
     <rect>
      <x>320</x>
      <y>180</y>
      <width>86</width>
      <height>26</height>
     </rect>
    </property>
   </widget>
   <widget class="QLineEdit" name="titleEdit">
    <property name="geometry">
     <rect>
      <x>160</x>
      <y>70</y>
      <width>113</width>
      <height>26</height>
     </rect>
    </property>
   </widget>
   <widget class="QTextEdit" name="descriptionEdit">
    <property name="geometry">
     <rect>
      <x>120</x>
      <y>180</y>
      <width>104</width>
      <height>70</height>
     </rect>
    </property>
   </widget>
  </widget>
  <widget class="QMenuBar" name="menubar">
   <property name="geometry">
    <rect>
     <x>0</x>
     <y>0</y>
     <width>800</width>
     <height>23</height>
    </rect>
   </property>
  </widget>
  <widget class="QStatusBar" name="statusbar"/>
 </widget>
 <resources/>
 <connections/>
</ui>

Ответы (1 шт):

Автор решения: Matvj

Проблема в том, что файл ui ожидает QMainWindow, но ваш код C++ определяет QDialog. Выберите одно и исправьте другое.

→ Ссылка