我正在使用 QtCreator 创建 C++ 中的 Qt 应用程序。
我知道 CSS 并为我的应用程序中的元素制作主题并不太难,但是有没有办法制作文件并应用它?
我浏览了 Qt 文档,但我似乎找不到任何关于这样的事情。
目前,我正在设计每个按钮和其他内容的样式,但我可以将其全部放入一个文件中并立即将其应用到所有内容吗?
创建一个文件,例如
style.myStyle
。在那里,您可以放置所有小部件的样式,包括事件、属性等。然后,在应用程序启动时加载文件,并将其应用到应用程序:
#include <QApplication>
#include <QFile>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QFile file("./style.myStyle");
file.open(QFile::ReadOnly);
QString styleSheet = QLatin1String(file.readAll());
a.setStyleSheet(styleSheet);
MainWindow w;
w.show();
return a.exec();
}
现在在
style.myStyle
文件中,您可以自定义您的样式,例如:
QPushButton
{
background-color: white;
border-style: outset;
border-width: 2px;
border-radius: 10px;
border-color: beige;
font: bold 14px;
min-width: 10em;
min-height: 20em;
padding: 6px;
}
QPushButton:pressed
{
background-color: rgb(224, 0, 0);
border-style: inset;
}
QFrame, QLabel, QToolTip
{
border: 2px solid green;
border-radius: 2px;
padding: 1px;
}
该代码产生以下结果:
注意: 确保验证文件是否存在等