qss 檔案的使用和ID選擇器
為了使程式碼更具閱讀性,最近將setstysheet()的內容抽離出來,存成一個qss檔案。現將一些注意點記錄下來。
1)qss檔案內容分條:
QDialog{
background-image:url(:/login/images/sparrow-login/bk.png);
}
QLabel{
font:75 14pt Microsoft YaHei;
color:#00ff00;
}
QLabel#labelProductIcon{
width:107px;
height:107px;
}
QPushButton{
font:75 14pt Microsoft YaHei;
color:#f00000;
}
QPushButton#btnClose{
background-image:url(:/login/images/sparrow-login/close.png);
background-repeat:no-repeat;
background-position:center;
}
2)qss檔案應用
QString SparrowLogin::getQssContent(QString path)
{
QFile qssFile(path);
QString qssContent;
if (qssFile.open(QIODevice::ReadOnly))
{
qssContent = qssFile.readAll();
qssFile.close();
}
return qssContent;
}
setStyleSheet(getQssContent(":/file/qss/login.qss"));
3)ID選擇器,針對特定物件應用qss
原始檔設定:labelProductIcon->setObjectName("labelProductIcon");
qss檔案設定:
QLabel#labelProductIcon{
width:107px;
height:107px;
}
針對多個特定物件應用qss
QPushButton#btnClose::pressed,#btnMinimum::pressed{
/* 改變背景色 */
background-color:rgb(40,85,20);
/* 改變邊框風格 */
border-style:inset;
/* 使文字有一點移動 */
padding-left:3px;
padding-top:3px;
}