我目前正在學習Qt,我似乎遇到了問題。 在我的實踐項目中,我有兩個類:MainWindow和Dialog。Qt傳遞不相關對象之間的變量
MainWindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include "dialog.h"
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private slots:
void on_pushButtonDialog_clicked();
private:
Ui::MainWindow *ui;
Dialog *dialogInstance;
};
#endif // MAINWINDOW_H
MainWindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
dialogInstance = new Dialog(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButtonDialog_clicked()
{
dialogInstance->show();
}
Dialog.h
#ifndef DIALOG_H
#define DIALOG_H
#include <QDialog>
namespace Ui {
class Dialog;
}
class Dialog : public QDialog
{
Q_OBJECT
public:
explicit Dialog(QWidget *parent = 0);
~Dialog();
private:
Ui::Dialog *ui;
};
#endif // DIALOG_H
Dialog.cpp
#include "dialog.h"
#include "ui_dialog.h"
Dialog::Dialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::Dialog)
{
ui->setupUi(this);
}
Dialog::~Dialog()
{
delete ui;
}
我的目標是使用輸入對話框窗口的值,則對主窗口顯示輸入的值,我知道如何使用小部件類中的周圍傳遞變量,但我不知道如何在不相關的對象之間傳輸變量。
任何輸入都會有很大的幫助。
您可以在一個類從部件連接'signals'到'slots'中的其他對象的其它物品/部件......什麼是你實際遇到的問題? – tmpearce
爲了能夠使用信號和插槽,Dialog類是否必須具有它自己的MainWindow對象? –
編號''將來自對話框的信號連接到'MainWindow'中的'slot'。 – tmpearce