读入qss文件代码:
static void setStyle(const QString& fileName)
{
QFile fileQss(fileName);
fileQss.open(QFile::ReadOnly);
qApp->setStyleSheet(fileQss.readAll());
fileQss.close();
}
当qss文件指定控件时不生效,在不指定控件时生效:
QLabel#Label {
color: red;
}
用了ID选择器以后,将只会有这个ID对应的控件会产生样式效果。这个ID一般通过setObjectName指定的,像对这个QLabel进行设置,就必须在代码中加上Label->setObjectName ("Label");
但通常从Designer中命名好的控件不用特意加上setObjectName是因为在系统生成的ui头文件中已经帮你做了这件事儿了,所以在用的时候千万不能QLabel#ui->Label 这样,ui是命名控件,这样写是非法的。