我为多窗口qt项目设置了骨架。它编译ans看起来很好,所以我开始添加所有我的gui元素等。现在,突然间,我的一扇窗户被打破了。特别是,我在标题
中遇到了一些问题namespace Ui {
class VideoPanel;
} ...
private:
Ui::VideoPanel *ui;
和cpp文件中的相应部分:
VideoPanel::VideoPanel(QWidget *parent) :
QWidget(parent),
ui(new Ui::VideoPanel)
{
ui->setupUi(this); //
}
我得到的错误是
Error 1 error C2512: 'Ui::VideoPanel' : no appropriate default constructor available
在ui(new Ui::VideoPanel)
行。
我已经看到,如果你没有包含所有正确的Qt gui头文件,这可能会发生,所以除了构造函数和析构函数之外,我已经删除了代码中的所有内容。
满h:
#ifndef VIDEOPANEL_H
#define VIDEOPANEL_H
#include <QtWidgets>
#include <QWidget>
namespace Ui {
class VideoPanel;
}
class VideoPanel : public QWidget
{
Q_OBJECT
public:
VideoPanel(QWidget *parent = 0);
~VideoPanel();
private slots:
private:
Ui::VideoPanel *ui;
};
#endif // VIDEOPANEL_H
完整的cpp:
#include "videopanel.h"
#include "ui_videopanel.h"
VideoPanel::VideoPanel(QWidget *parent) :
QWidget(parent),
ui(new Ui::VideoPanel)
{
ui->setupUi(this); //
}
VideoPanel::~VideoPanel()
{
}