使用QSS動態更換皮膚簡單舉例

作者: qt001  來源: www.meegoq.com  發布時間: 2010-10-17 22:38  閱讀: 4605 次  推薦: 0   原文鏈接   [收藏]  

最近在看QSS的內容,覺得真是一個十分好用的東西,特來做了一個小例子和大家一起學習下。
通過QSS可以實現動態更換QT程序的外觀。具體QSS的內容請看QT皮膚(QSS)編程,這里有QSS的詳細介紹。
下面我主要通過一個小例子說明下如何動態變換皮膚的功能。
首先,先創建一個test.qss文件,放置在程序目錄下,文件內容如下:

 
QPushButton {
color:red;
background
-color:#FFFFFF
}

具體含義就是設置QPushButton字體顏色為red,背景顏色為#FFFFFF
接著,我們創建一個QPushButton的對象,當點擊這個button時,就加載這個QSS文件,具體代碼如下:

 
void MainWindow::loadStyleSheet()
{
QFile qss("test.qss");
qss.open(QFile
::ReadOnly);
qApp->setStyleSheet(qss.readAll());
qss.close();

}

void MainWindow::on_pushButton_clicked()
{
loadStyleSheet();
}

最后,就可以看一下效果了,點擊按鈕,按鈕的字體顏色和背景顏色就變化了。而你如果想讓他變成不同的顏色,只需要修改一下qss文件就可以了,如果你想給按鈕加上背景顏色,也只需修改修改qss文件,是不是相當的方便?下面這個是我通過修改qss給程序的窗口加上了一個背景。

不需要寫任何的代碼,只要將qss文件的內容改為如下:

 
QMainWindow{
background:url(./Screenshot-1.png)
}
QPushButton {
color:red;
background-color:#aaaaaa
}

當然以上只是一個小小的例子,只是為了展示qss的功能,更加豐富的內容需要大家自己去嘗試。

0
0
 
 
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()