原地址:http://blog.csdn.net/lastsoup/article/details/7043124css
Qt的皮膚設計,也能夠說是對Qt應用程序的界面美化,Qt使用了一種類CSS的樣式規則QSS。html
1、Style Sheet的應用測試
1.直接在程序代碼中設置樣式,利用setStyleSheet()方法字體
widget->setStyleSheet("color:red"); //widget內字體顏色爲紅色網站
widget->->setStyleSheet(QPushButton{color:red} QPushButton:hove{color:yellow}); this
//widget內的QPushButton對象字體顏色爲紅色,當鼠標懸浮時爲黃色url
2.使用qss文件spa
步驟:.net
建立qss文檔,例:stylesheet.qss設計
根據qss語法,寫自定義的內容(詳見qss語法)
引入qss文件,使界面效果生效
QFile file("skin/clean.qss");//路徑爲應用程序所在目錄開始
file.open(QFile::ReadOnly);
QTextStream filetext(&file);
QString stylesheet= filetext.readAll();
this->setStyleSheet(stylesheet);
2、qss語法
qss和css同樣有兩部分組成,選擇器和語句聲明(selector和declaration)
選擇器分爲通常選擇器、子控件選擇器(輔助控制器)和僞選擇器(僞狀態)(下面爲轉載,出處http://www.cnblogs.com/davesla/archive/2011/01/30/1947928.html)
一、 通常選擇器(selector)
Qt支持全部的CSS2定義的選擇器,其祥細內容能夠在w3c的網站上查找http://www.w3.org/TR/CSS2/selector.html , 其中比較經常使用的selector類型有:
二、子控件選擇器
若是你要查看Qt支持哪些子控件選擇器,能夠參考:http://pepper.troll.no/s60prereleases/doc/stylesheet-reference.html#list-of-sub-controls-syntax.html
三、僞選擇器(pseudo-states)
經常使用的語句聲明
基本用法
QPushButton { color: red }
多個共享屬性( , )
QPushButton, QLineEdit, QComboBox { color: red }
設置多個屬性( ; )
QPushButton { color: red; background-color: white }
經常使用的屬性
color:red //字體顏色爲紅色
background:yellow //背景顏色爲黃色
background-color:yellow //使用rgb(255,0,0) rgba(255,0,0,50%)最後爲透明度 #ffffff顏色RGB值
background-image:url(images/top.jpg);//背景不隨窗口伸縮
border:1px solid gray //邊框爲1px並填充實心灰色 (groove凹槽)
border-top boder-botom……
boder-color
border-radius:10px //邊框圓角半徑爲10px
border-top-left-radius
border-top-rightt-radius
……
border-image:url(images/top.jpg);//背景圖片隨窗口變化
padding:2px 4px //設置內邊框屬性上內邊距2px,右內邊距爲4px,下爲0,左爲0可不寫(上右下左)
##設置背景顏色漸變
background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
stop: 0 #E1E1E1, stop: 0.4 #DDDDDD,
stop: 0.5 #D8D8D8, stop: 1.0 #C7F8FA); /*背景顏色:顏色漸變(x1右,y1下,x2左,y2上,stop漸變點(0-1):顏色) ,y2:1顏色從上向下漸變*/
詳細參考http://doc.qt.nokia.com/latest/stylesheet-reference.html的List of Properties
以上全部可查看Qt的在線幫助手冊http://doc.qt.nokia.com/latest/stylesheet.html