Я открываю диалог, который представляет пользователь форму с:Держите диалог открытой до тех пор, пока сигнал отбраковки
if(dialog.exec() == QDialog::Accepted)
{
// do stuff based on returned values
if (retval == 1)
{
value1=dialog.value1();
}
if (retval == 2)
{
// do something else with values from dialog
}
}
кнопка формы предлагают несколько вариантов для манипулирования данных пользователя заносит. Пользователь может захотеть сделать несколько данных с данными в форме. Есть ли способ сохранить диалог открытым до тех пор, пока сигнал reject() не будет передан кнопкой отмены диалога?
Я хочу, чтобы диалог оставался открытым до тех пор, пока он не будет явно закрыт с помощью кнопки отмены. Я хочу, чтобы другие кнопки функционировали так, как они сейчас делают, передают значения обратно функции, открывшей диалог, но я хочу, чтобы эти значения передавались без закрытия диалога.
Ваш вопрос не настолько ясен, вы имеете в виду, что exec() выходит, когда вы этого не хотите, например, когда вы нажимаете кнопку «ОК», вы хотите, чтобы он оставался открытым и закрывался только нажатием кнопки «Отмена»? – Marco
Отредактировано, надеюсь, для ясности. – Jocala
Мой первый инстинкт при чтении этого вопроса заключается в том, что это звучит как плохая идея. Конечно, я не знаю, что вы делаете, но я думаю, что, вероятно, лучшее решение вашей проблемы, чем неправильное использование гаджетов пользовательского интерфейса, не предназначено для них. Пользователь ожидает, что диалог исчезнет при нажатии OK. – Misch