我试图让我的3个窗口之间的联系,所以我把这个在我的mainwindow.h
:切换窗口
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include "video.h"
#include "flightdata.h"
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
public slots:
void openNewWindowVideo();
void openNewWindowData();
private:
Ui::MainWindow *ui;
video *myVideoWindow;
flightdata *myDataWindow;
};
#endif // MAINWINDOW_H
这在我的实现:
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
connect(ui->actionVideo,SIGNAL(triggered()),this,SLOT(openNewWindowVideo()));
connect(ui->actionFlight_data,SIGNAL(triggered()),this,SLOT(openNewWindowData()));
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::openNewWindowVideo()
{
myVideoWindow = new video();
myVideoWindow->show();
this->close();
}
void MainWindow::openNewWindowData()
{
myDataWindow = new flightdata();
myDataWindow->show();
this->close();
}
这作品。
但是当o遵循2个其他窗口(file.h
+ file.cpp
)相同的步骤,
II得到错误: QT错误: 'flightdata' 没有指定 类型QT错误: '视频'不会命名一个类型
但是,当我只包括第一个窗口而不是其他2个时,我不会遇到这个问题。
也许它是由递归引起的。
是否包含您需要的所有文件? – prajmus
是的问题是,我有3个文件,我必须包括 和每次我必须包括在每个类 但是当我这样做只是为一个类,它的工作10/10 但当我使包括在所有的类它转向这个错误 Bcs简单地如果我包括Xh在Yh,并在一段时间内我需要在Xh inch Yh,QT将有问题生成文件 – user2216648
正向声明你的类 – prajmus