qt的项目中单个文件加载样式表
生活随笔
收集整理的這篇文章主要介紹了
qt的项目中单个文件加载样式表
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
引言
編寫一個項目后,通過加載樣式表來設置項目中的所有控件的樣式,我之前習慣的是在main.cpp文件中加載一個樣式表,該樣式表含有程序中所有控件的樣式,也就是整個程序只需要加載一遍樣式文件。但是多人開發時,不合理的項目結構就會導致每一個模塊單獨控制自己的樣式,甚至每一個界面類單獨加載自己的樣式文件,這樣就會和在main.cpp文件中只加載一個又些不同。
實現
每一個界面類單獨加載自己的樣式文件。
void SaveSceneDialog::readStyleFile() {QFile file(":/saveSceneDlg.qss");/*QSS文件所在的路徑*/file.open(QIODevice::ReadOnly);if(file.isOpen()){QString strFile = file.readAll();setStyleSheet(strFile);file.close();/*記得關閉QSS文件*/} }當在main.cpp文件中加載的時候,需要使用變量 QApplication a(argc, argv);但在ui類中卻沒有變量 QApplication a(argc, argv);故而需按照上述代碼進行編寫。
當然之前看網上有人寫成下面這樣:
這樣寫也是可以的,但是這樣寫在通過qDebug()輸出樣式表中的內容時,中文無法正常顯示。上面第一種則可以正常顯示,提倡第一種方式,不使用QLatin1String()轉換.
總結
以上是生活随笔為你收集整理的qt的项目中单个文件加载样式表的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: qt窗口左上角坐标变动函数使用中的误区
- 下一篇: 信号槽绑定时出现未有匹配的connect