1
我覺得我錯過了一些明顯的東西,但我希望能夠錯誤地檢查用戶在點擊「OK」時在模式對話框中輸入的內容,以及允許他們返回並修復它而不關閉對話框。取消Qt中接受的對話框(又名用戶錯誤檢查)
有沒有什麼我可以在'確定'按鈕的槽回調,將告訴對話框不關閉?
我覺得我錯過了一些明顯的東西,但我希望能夠錯誤地檢查用戶在點擊「OK」時在模式對話框中輸入的內容,以及允許他們返回並修復它而不關閉對話框。取消Qt中接受的對話框(又名用戶錯誤檢查)
有沒有什麼我可以在'確定'按鈕的槽回調,將告訴對話框不關閉?
您可以使用可以知道返回值被拒絕的完成方法。
例如:
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();
}
謝謝,這是回答我問。我也將檢查QValidator作爲替代。 – Balk
我修復了我的代碼。在完成的方法中檢查狀態更適合我的工作。 –