2017-06-29 39 views
0

在常規QMainWindow Qt的彈出插件,我想顯示在含有一個簡單的錯誤消息窗口的底部的窗口小部件,並在一段時間之後隱藏或銷燬圖像(I想要一個簡單的彈出報告/日誌小部件)。與消息

我應該用什麼? QDialogQWidget?有什麼小工具與我想要的相似嗎?

+0

IMO這個問題是基於意見,它取決於您的需求。請詳細說明您的問題,發佈一些代碼,例子並指出一個真正的問題。 –

+0

爲什麼不使用'mainWindow-> statusBar() - > showMessage(「my message」,1000);'在主窗口的狀態欄上顯示消息1秒?有關更多細節,請查看'QStatusBar :: showMessage()'函數。 – vahancho

回答

0

QDialog將創建一個新的單獨的窗口中顯示您的消息。一些基於QDialog的小部件已經可用,例如,您可以撥打QMessageBox::information()來顯示簡單的文本消息。

對話框可以我模態或沒有,這意味着與底層窗口它們將(或不)塊的用戶交互。

我不想打開一個新窗口,並希望您的彈出窗口顯示在現有的窗口中,您必須玩QWidget繪製的方式。在實踐中這意味着您的彈出式窗口小部件必須是你的窗口小部件(QMainWindow等)直接子和使用QWidget::raise()它的兄弟姐妹之前一定要帶。

0

一個寫了一個簡單的彈出消息框,顯示一些文本,並順利淡出的時間後給予量。看起來像你需要的東西。 Grab here

NotifyMessageBox::showMessage(tr("Loading finished"), this); 

NotifyMessageBox::showMessage(tr("Failed to load test results \"%1\": %2").arg(
           docId, 
           DocumentRequest::errorString(error)), 
           QFont("Segoe UI", 12), 
           1500, // time interval to destroy after 
           this);