1、在其他类中,添加一个带UI参数的构造函数;
2、在主类中定义一个其他类的变量;
3、在初始化此变量时,将主类UI指针传入其他的构造函数中;
4、其他类中就可以通过传入的指针操作UI。
widget.cpp
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
stu = new Study(ui);
}
Widget::~Widget()
{
delete ui;
}
widget.h
#ifndef WIDGET_H
#define WIDGET_H
#include "study.h"
#include <QWidget>
QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE
class Study;
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = nullptr);
~Widget();
private:
Ui::Widget *ui;
Study *stu;
};
#endif // WIDGET_H
study.cpp
#include "study.h"
Study::Study(Ui::Widget *window) : Ui(window)