我有QMainWindow
作爲其在最小化狀態的UI的應用程序,該應用程序通過調用messageDlg->show()
(messageDlg
是QDialog
對象)拋出的消息在一段時間之後。這樣保持QMainWindow的最小化時QDialogs顯示()
void MainWindow::WarningDialog()
{
m_messageDialog = new QDialog(this);
m_messageDialog ->show();
}
某事,這導致我的QMainWindow
中,我不希望發生的,即想保持在最小化窗口的應用程序,即使任何QDialog.show()
被稱爲正常模式。
我不希望每次調用QDialog->show()
時都繼續檢查應用程序是否處於最小化模式。
我跟蹤了發佈到QMainWindow::event()
的所有事件,但在恢復我的窗口之前發生的唯一事件是QEvent::WindowStateChange
,即窗口狀態已從最小化模式改變。
即使任何QDialog
顯示,是否有辦法使QMainWindow
最小化?
當'QDialog'正在運行時,將'QMainWindow'設置爲'最小化'force。 似乎,你的'QDialog'是模態的。 – Ruu
不,它不是模態的。嗯,我認爲QWidget – blueskin