在学习QT开发过程中,QT编译出现报错,报错代码行包含(incomplete type ‘Ui::ARwindow‘ )
报错原因:UI文件 objectName 为默认值 "Form" 与 调用值 ”ARwindow“ 不一致
最终解决方法:在"arwindow.ui" 中修改 objectName 为 ”ARwindow“
总结:新建QT窗口对象,尽量同步新建.ui .cpp .h文件;单独新建ui文件时,需要检查调用名称是否一致。
报错及解决过程:
1.先通过添加c++文件,建立arwindow.cpp及arwindow.h文件。
2.单独新建 arwindow.ui。
arwindow.h
#ifndef ARWINDOW_H
#define ARWINDOW_H
#include
#include
QT_BEGIN_NAMESPACE
namespace Ui{class ARwindow;}
QT_END_NAMESPACE
class ARwindow : public QWidget
{
Q_OBJECT
public:
explicit ARwindow(QSqlDatabase *ptDatabase,QWidget * parent = nullptr);
~ARwindow();
Ui::ARwindow * ui ;
signals:
};
#endif // ARWINDOW_H
arwindow.cpp
#include "arwindow.h"
#include "ui_arwindow.h"
ARwindow::ARwindow(QSqlDatabase *ptDatabase, QWidget *parent)
: QWidget{parent},
ui(new Ui::ARwindow) //报错位置一,报错内容含 incomplete type 'Ui::ARwindow'
{
ui->setupUi(this); //报错位置一,报错内容含 incomplete type 'Ui::ARwindow'
}
ARwindow::~ARwindow()
{
delete ui;
}
3.点击arwindow.ui,在设计界面右下角 修改objectName值
objectName 为默认值 "Form",修改为”ARwindow“,与调用名称保证一致
4.重新编译,报错消失。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)