Мне кажется, что я упускаю что-то очевидное, но я хочу иметь возможность проверять ошибки, введенные пользователем в модальном диалоговом окне, когда они нажимают «ОК», и позволить им вернуться назад и исправить это, не закрывая диалоговое окно.
Что-то, что я могу установить в обратном вызове слота кнопки «ОК», которое сообщит диалогу не закрываться?
Вы можете использовать готовый метод, который вы могли знать, возвращаемое значение отклонено или нет.
например:
void ExDialog::done(int res)
{
if (res == QDialog::Accepted)
{
// check if it is ok or not
if(not)
{
ShowErrPopUp();
return;
}
}
QDialog::done(res);
}
// when ok button is clicked
void ExDialog::action_ok_bt_clicked()
{
this->accept();
}