最近在看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)
background-color:#aaaaaa
當然以上隻是一個小小的例子,隻是為了展示qss的功能,更加豐富的内容需要大家自己去嘗試。