Я довольно новичок в C++ и Qt. Я получил довольно далеко от моего текущего проекта, но я откладывал эту часть. У меня есть кнопка, которая открывает новое диалоговое окно:(Qt C++) Отправить значение int из диалога MainWindow?
void MainWindow::on_fillAll_clicked()
{
int yo;
BlockSelect bSelect;
bSelect.setModal(true);
bSelect.exec();
if(bSelect.exec() == QDialog::Accepted)
{
//Get stuff here?
//I want to fill yo with the spinbox value
yo = bSelect.stuff();
return;
}
qDebug() << yo;
}
Это прекрасно работает. В диалоговом окне у меня есть спин-бокс. Я хочу отправить это значение, введенное в поле со стрелкой, в мое главное окно, когда пользователь нажмет OK.
Я пытался получить «int yo;» чтобы иметь это значение из спинбокса, но все, что я пытаюсь, просто вызывает ошибку.
Я добавил это к моему BlockSelect общественного класса:
int stuff();
И я сделал эту функцию в моей blockselect.cpp:
int BlockSelect::stuff()
{
qDebug() << "The function was called";
return ui->yolo->value();
}
Но QDebug никогда не показывает ничего ???
Так как я могу заполнить yo из главного окна yolo из диалога?
Извините, если я не объяснить это хорошо :(Я все еще учусь. Спасибо за ваше время :)
Oh! Спасибо, что рассказала мне об этом. :) Я создал это в своем блочном виде.cpp (диалог cpp) void BlockSelect :: stuff() { int yolo (5); } – mrg95
Я попытался поместить yo = bSelect.stuff (yolo) в мой оператор if, но он не работал – mrg95
Я добавил то, что я сделал, к моему классу BlockSelect и blockselect.cpp к своему оригинальному сообщению. Я просто не понимаю, что добавить в оператор if, чтобы получить значение spinbox. – mrg95