将字符串从对话框传递到MainWindow?

时间:2014-04-15 16:48:11

标签: c++ qt data-transfer qdialog

我正在尝试创建一个包含MainWindow.cpp和dialog1.cpp的程序,我需要将对话框的QLineEdit中的字符串传递给MainWindow.cpp中的函数。现在我刚刚创建了一个qt对话框表单类和使用模态方法来查看对话框 该对话框从myString中的lineedit获取输入 Dialog.cpp

    void Dialog::on_buttonBox_clicked(QUrl fileUrl)
{
    QString myString = ui->lineEdit->text();
}

现在我必须将myString中的数据传递给dnldFile函数作为MainWindow.cpp中的参数。

    void MainWindow::on_dnldButton_clicked()
{
    Dialog newDnld;
    newDnld.setModal(true);
    newDnld.exec();
    dnldFile();
}

我该怎么做?

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以简单地将myString声明为类成员,并通过getter方法获取值并将其传递给您的函数:

void Dialog::getString()
{
    return myString;
}
void MainWindow::on_dnldButton_clicked()
{
    //Dialog is showed via "Modal approach".
    Dialog newDnld;
    newDnld.setModal(true);
    newDnld.exec();
    dnldFile(newDnld.getString());
}
相关问题