我實現了一個從QDialog繼承的定製QMessageBox。 (使用Qt 4.8.6)QMessageBox從何處獲取styleguide,font-size,...?
的問題是,現在所有的自定義消息框看起來完全不同於QMessageBox提示靜態函數:
- QMessageBox提示::信息(...)
- QMessageBox提示: :關鍵(...)
- QMessageBox提示::問題(...)
- QMessageBox提示::警告(...)
它們在大小,字體,字體大小,圖標,背景(靜態qmessageboxs有兩種背景顏色)等方面不同,...。
我唯一發現的是如何訪問操作系統特定的消息框圖標。
QStyle *style = QApplication::style();
QIcon tmpIcon = style->standardIcon(QStyle::SP_MessageBoxInformation, 0, this);//for QMessageBox::Information
是否有類似的字體或整體風格。
我知道QMessagebox使用操作系統特定的風格指南。但我找不到它們。 您可以查看源代碼here。
所以我的問題是如何使自定義QMessageBox從QDialog繼承看起來像靜態QMessageBox :: ...函數?
其實(如果我能訪問QMessageBox提示對象,在這種靜態函數調用,我可以讀出所有的樣式和字體參數創建的。但是,這是不可能的。)
我wannt添加勾選 「不再顯示此消息」 – user1911091 2014-09-29 11:19:54
@ user1911091莫非['QErrorMessage'(HTTP:// QT -project.org/doc/qt-5/qerrormessage.html#static-public-members)爲你工作? – thuga 2014-09-29 11:46:43
不,我們在整個應用程序中使用4個消息框(警告,問題,關鍵信息)。 也有類似操作系統的QErrorMessage風格嗎? – user1911091 2014-09-29 12:39:13