Stuck in this Error :::invalid use of incomplete type ‘class Ui::Dialog’ ui(new Ui::Dialog) ^~~~~~
-
dialog.cpp
#include "dialog.h" #include "ui_dialog.h" #include <QProgressDialog> #include <QDebug> Dialog::Dialog(QWidget *parent) : QDialog(parent), ui(new Ui::Dialog) { ui->setupUi(this); } Dialog::~Dialog() { delete ui; } void Dialog::on_modalButton_clicked() { int numTasks = 100000; QProgressDialog progress("Task in progress...", "Cancel", 0, numTasks, this); progress.setWindowModality(Qt::WindowModal); for (int i = 0; i < numTasks; i++) { progress.setValue(i); if (progress.wasCanceled()) break; } progress.setValue(numTasks); } void Dialog::on_modelessButton_clicked() { myTask = new MyTask; }
-
So how did you name you widget in the designer? Looking into ui_dialog.h will show you that it's at least not 'Dialog'
-
@sankarapandiyan Do you use qmake?
Did you check whether ui_dialog.h contains Dialog class inside Ui namespace? -
@sankarapandiyan nobody will be able to find the error here, show us your header file
also pls use the code tag to display code:
-
@Christian-Ehrlicher in designer i have used only Dialog , then why its shows the error , please give some suggestion to fix this error
-
@sankarapandiyan He asked you to post the code...
-
@sankarapandiyan said in Stuck in this Error :::invalid use of incomplete type ‘class Ui::Dialog’ ui(new Ui::Dialog) ^~~~~~:
I have done it
Where? I can't see the code from your header files anywhere...
-
@sankarapandiyan Sorry, but I can't see it anywhere...
-
@sankarapandiyan neither can I
-
Hi
Please also showdialog.h
and most important
ui_dialog.h
-
``
i have included #include <ui_dialog.h> in dialog.h #ifndef DIALOG_H #define DIALOG_H #include <QDialog> #include "mytask.h" #include <ui_dialog.h> namespace Ui { class Dialog; } but the error remains the same /home/adx-soft1/Desktop/Sankarapandiyan/ProgDial/dialog.cpp:10: error: invalid use of incomplete type ‘class Ui::Dialog’ ui(new Ui::Dialog) ^~~~~~ this is my dialog.h #ifndef DIALOG_H #define DIALOG_H #include <QDialog> #include "mytask.h" #include <ui_dialog.h> namespace Ui { class Dialog; } class Dialog : public QDialog { Q_OBJECT public: explicit Dialog(QWidget *parent = 0); ~Dialog(); private slots: void on_modalButton_clicked(); void on_modelessButton_clicked(); private: Ui::Dialog *ui; MyTask *myTask; }; #endif // DIALOG_H
-
@sankarapandiyan Can you please simply provide the content of ui_dialog.h? This is what we are asking all the time.
-
@jsulm [url=https://postimg.cc/tZyZdZ4R][img]https://i.postimg.cc/tZyZdZ4R/Screenshot-from-2019-10-31-13-33-16.png[/img][/url]
[url=https://postimg.cc/rd5RtCcY][img]https://i.postimg.cc/rd5RtCcY/Screenshot-from-2019-10-31-13-33-28.png[/img][/url]
-
@sankarapandiyan This is not what we asked you to provide!
AGAIN: post the content of ui_dialog.h ! It is a normal C++ header file, so symply copy its text and post it here directly... -
@jsulm ```
code_text#define DIALOG_H #include <QDialog> #include<QTimer> #include<QProgressDialog> namespace Ui { class Dialog; } class Dialog : public QDialog { Q_OBJECT public: explicit Dialog(QWidget *parent = nullptr); ~Dialog(); public slots: void myfunction(); void perform(); void cancel(); private: Ui::Dialog *ui; int steps; QProgressDialog*pd; QTimer*timer; }; #endif // DIALOG_H This is the hedder file of dialog.h
-
@sankarapandiyan Sorry I will stop here as I'm tired to explain that you simply need to copy text from ui_dialog.h and paste it here...