为我的Qt小部件应用程序使用主题

时间:2014-10-22 14:23:44

标签: qt

如何在qt嵌入式应用程序/小部件中使用主题,我在此网址上按照以下说明操作。但它似乎并不确定为什么我可能错过了一些东西

Qt dark orange stylesheet

int main(int argc, char *argv[])
{
    QString file_path = QCoreApplication::applicationDirPath() + "/theme.css";

    QApplication a(argc, argv);
    QApplication::setStyle("plastique");

    MainWindow w;
    QFile style_file(file_path);
    if(style_file.open(QIODevice::ReadOnly))
    {
      qDebug() << "Readin file OK!";
      w.setStyleSheet(style_file.readAll());
      style_file.close();
    }
    w.show();

    return a.exec();
}

我也上传了&#34; theme.css&#34;文件到同一路径,文件确实存在。

2 个答案:

答案 0 :(得分:1)

尝试将绝对路径传递给样式表文件:

QCoreApplication::applicationDirPath() + QString("darkorange.stylesheet");

答案 1 :(得分:0)

您应该将样式表的内容放在QWidget::setStyleSheet中,而不是文件的路径。因此,请使用QFile打开文件,阅读内容并将其设置为样式表。

以下是一个例子:

QFile style_file("path/to/stylesheet/darkorange.stylesheet");
if(style_file.open(QIODevice::ReadOnly))
    this->setStyleSheet(style_file.readAll());