【发布时间】:2016-01-20 21:33:19
【问题描述】:
当我启动我的程序时,会弹出一个对话框窗口并要求我输入一个名称。一旦我输入了我的姓名并按下按钮,它就会关闭对话框并打开主窗口。
我的问题是如何将我刚刚在对话框中设置的变量/名称放入另一个类/我的 main.cpp
Main.cpp
#include "mainwindow.h"
#include <QApplication>
#include <QtDebug>
#include <QtNetwork>
#include <sstream>
#include "mydialog.h"
using namespace std;
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
// Open Dialog
MyDialog mDialog;
mDialog.setModal(true);
mDialog.exec();
//Open Main Window
GW2::MainWindow w;
w.show();
return a.exec();
}
mydialog.cpp
#include "mydialog.h"
#include "ui_mydialog.h"
#include <QDebug>
using namespace std;
MyDialog::MyDialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::MyDialog)
{
ui->setupUi(this);
}
MyDialog::~MyDialog()
{
delete ui;
}
void MyDialog::on_pushButton_clicked()
{
QString MYNAME = ui->lineEdit->text();
close();
}
我可以在此处获取 MYNAME,在我按下按钮后可以使用,但我需要传递变量...
mydialog.h
#ifndef MYDIALOG_H
#define MYDIALOG_H
#include <QDialog>
#include <QString>
namespace Ui {
class MyDialog;
}
class MyDialog : public QDialog
{
Q_OBJECT
public:
explicit MyDialog(QWidget *parent = 0);
~MyDialog();
private slots:
void on_pushButton_clicked();
private:
Ui::MyDialog *ui;
};
#endif // MYDIALOG_Hs
我尝试使用谷歌和搜索功能,但没有找到任何对我的项目有用的东西。希望您能够帮助我。干杯
【问题讨论】:
-
您可以使您的
my_name变量成为 MyDialog 类的成员。根本不是一个糟糕的解决方案。