Я пытаюсь сделать программу, которая имеет 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();
}
Как я могу это сделать?
Спасибо!
Вы можете просто объявить 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());
}
Других решений пока нет …