在我的小部件中,我可以执行以下操作:

MyWindow::MyWindow(QWidget *parent) :
    QWidget(parent)
{
    ui.setupUi(this);
    setStyleSheet("QWidget { background-color: red }");  // <--- HERE
}


这会将小部件背景设置为红色。

我的资源中有一个QSS文件。我如何指示我的小部件从那里获取样式表内容,而不是仅将qss语法作为参数?

最佳答案

作为为每个小部件设置样式表的替代方法,您只需为整个应用程序加载和设置样式表即可。像这样:

QApplication app( argc, argv );

// Load an application style
QFile styleFile( ":/style.qss" );
styleFile.open( QFile::ReadOnly );

// Apply the loaded stylesheet
QString style( styleFile.readAll() );
app.setStyleSheet( style );


在这种情况下,所有小部件都会自动从给定的样式表中选择其样式。

关于qt - QT:资源QSS文件中的setStyleSheet?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4810729/

10-11 07:06