Здравствуйте. Помогите пожалуйста с одним вопросом. Пишу программу в Qt с интерфейсом. При нажатии кнопки должны выполняться определенные действия, на некоторые значения стоит проверка и QInputDialog для изменения значения во время выполнения программы. Написали конструкцию do-while для проверки, при некорректном вводе значения программа работает исправно снова предлагая ввести корректное значение, однако когда ввожу требуемое значение, то программа просто зависает и перестает работать. Не пойму почему, при использовании точно такой же конструкции, но в консольном приложении все работает исправно. Пожалуйста подскажите как решить эту проблему.
C++ (Qt)
void MainWindow::on_pushButton_clicked()
{
QLocale::setDefault(QLocale::C);
....
bool bv_1 = true;
bool ok;
do
{
if (ver_1 < 0 || ver_1 > 1)
{
double test = QInputDialog::getDouble(this, "Error!", "Write number from 0 to 1!", ver_1, -2147483647, 2147483647, 3, &ok );
if (ok)
{
ver_1 = test;
}
else {
bv_1 = false;
break;
}
}
}while(bv_1);
.....
}