Qt中qss的使用
Qt支持css樣式表,它是網(wǎng)頁中用來控制顯示的腳本,功能豐富,可以很方便的實現(xiàn)各種顯示效果。如果想進一步了解其語法以及使用,可訪問www.w3school.com.cn。好在之前在寫網(wǎng)站,比較熟悉。
給一個控件添加樣式表,只需調(diào)用其setStyleSheet即可,傳入將樣式內(nèi)容作為字符串傳入。一般為了方便是把樣式表寫成一個單獨的文件,后綴名隨意,一般是.qss。然后在程序啟動的時候加載這個文檔,讀入內(nèi)容,調(diào)用setStyleSheet即可。
這里寫了一個簡單的類
qqss.h
class QQss { public:explicit QQss();~QQss();public:bool LoadQss( const QString &skinfile ); // 載入樣式表public:QString qssStr; // 保存樣式表內(nèi)容 };qqss.cpp QQss::QQss() { }QQss::~QQss() { }bool QQss::LoadQss( const QString &skinfile ) {QFile file( skinfile ); // 加入項目資源中的qss文件,不要/prefix直接放在/根目錄下,否則會報無法解析的錯誤if( file.open( QIODevice::ReadOnly ) ){qssStr = QString( file.readAll() );file.close();return true;}else{qDebug("無法打開樣式表");return false;} } 需要注意的就是上面的一個注釋,qss文件如果加入到工程中的話,要直接放在'/'前綴下面,和源文件同目錄才行。另外,qss如果加到工程中的話,就會被編譯鏈接到最后的.exe的二進制文件中了(可以在QtCreator中的幫助中查找Qt的Resource管理),但是這樣就不好實現(xiàn)換膚的功能了,所以最好從外部來讀樣式表,而不要加入到工程中。如果加入到工程中,那么路徑就是':/'下的路徑,注意有冒號。
總結(jié)
- 上一篇: cors 前后端分离跨域问题_前后端分离
- 下一篇: 还不起债了?美国决定增加长期债务发行以拖