【问题标题】:Cannot load image for QLabel background无法为 QLabel 背景加载图像
【发布时间】:2013-07-26 07:00:20
【问题描述】:

我的qrc文件定义如下,

<RCC>
    <qresource prefix="/images">
        <file>Resources/images/background.png</file>
    ....

我想使用文件background.png 作为我标签的背景。 我确实喜欢这个,

label->setStyleSheet( "background-image: url(:/images/background.png);" );

但它不能将图像设置为背景。 无论如何都知道为什么标签无法加载图像?找不到图片?

谢谢

【问题讨论】:

    标签: qt


    【解决方案1】:

    您说您想要Resources/images/background.png 文件的/images 前缀,因此在资源系统中该文件可用作

    :/images/Resources/images/background.png
    

    如果您希望简化文件的路径,请使用别名:

    <file alias="background.png">Resources/images/background.png</file>
    

    这将使其在

    下可用
    :/images/background.png
    

    对于未来,学习如何自己调试这些简单的问题:只需投入

    QDirIterator i(":/", QDirIterator::Subdirectories);
    while (i.hasNext())
        qDebug() << i.next();
    

    在您的main 函数中会告诉您资源层次结构的外观,以及您使用的资源路径是否错误。

    【讨论】:

    • 好的,谢谢,我会检查的。我发现有些人绘制 UI 并在某处使用资源文件。对于一个人来说,使用 CSS 和 C++ 混合工作很容易,而且会浪费时间在团队合作上。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多