【问题标题】:Loading image from the filesystem doesn't work in Qt stylesheets从文件系统加载图像在 Qt 样式表中不起作用
【发布时间】:2021-01-11 18:01:09
【问题描述】:

我正在尝试从位于文件系统的文件中加载图像作为背景,但它没有显示出来。 如果我从资源文件中做同样的事情,它可以正常工作(使用:/..)。 为什么这会是一个问题,我错过了什么?

QT 5.11.2 MinGw 32 位。

代码是:

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    ui->label->setStyleSheet("border-image: url(file:///c:/flags/country.png);");
}

编辑#1:

按照建议,我添加了路径检查,例如:

const QUrl url("file:///C:/flags/country.png");

if (!url.isValid()) {
    qDebug("-------------------------------- Invalid URL: %s", qUtf8Printable(url.toString()));
}else{
    qDebug() << " ----------------- PATH IS OK! -----------------------------";
}

它返回 PATH IS OK!... 这让它变得更加陌生。

【问题讨论】:

标签: qt qtstylesheets


【解决方案1】:

这对我有用。

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    ui->label->setStyleSheet("border-image: url(c:/flags/country.png);"); <------- without file
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多