【发布时间】:2013-05-22 13:12:24
【问题描述】:
我正在尝试构建一个可以出现多个窗口的 Qt 应用程序。
示例:有一个主窗口,上面有一个设置菜单。单击设置菜单时,我希望显示另一个窗口,标题为“设置”,并显示程序的不同设置属性。
我希望在 Qt creator 中设计此设置窗口,而不是仅通过编写代码来创建。我设计了设置窗口并将settings.ui文件添加到我的项目中。
我还按照 mainWindow.h 和 mainWindow.cpp 的结构(创建 gui 项目时自动生成)创建了 settingsWindow.cpp 和 settingsWindow.h。
但是当我编译时,它在 settingsWindow.cpp 中的 settingsWindow 构造函数的ui(new Ui::settingsWindow) 上显示错误
settingsWindow::settingsWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::settingsWindow)
{
ui->setupUi(this);
}
错误提示:'Ui::settingsWindow' : no appropriate default constructor available
这里是settingsWinow.h的内容:
#ifndef SETTINGSWINDOW_H
#define SETTINGSWINDOW_H
#include <QMainWindow>
namespace Ui
{
class settingsWindow;
}
class settingsWindow : public QMainWindow
{
Q_OBJECT
public:
explicit settingsWindow(QWidget *parent = 0);
~settingsWindow();
private:
Ui::settingsWindow *ui;
};
#endif // SETTINGSWINDOW_H
我该怎么办?
【问题讨论】:
-
你能显示
settingsWindow的类声明吗? -
你尝试过重建你的项目吗?
-
设置窗口的objectName是什么?
-
@JBL 我已经在问题的编辑版本中添加了代码
-
@thuga 是的,我做到了。没有改善。