передать строку из диалога в MainWindow?

Я пытаюсь сделать программу, которая имеет MainWindow.cpp и dialog1.cpp, мне нужно передать строку из QLineEdit моего диалога в функцию в MainWindow.cpp. До сих пор я только что сделал класс формы диалога qt и Использовал модальный подход для просмотра диалога.
Диалог получает ввод из lineedit в myString.
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

Решение

Вы можете просто объявить 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());
}
1

Другие решения

Других решений пока нет …