QResource注册多个资源,资源加载原则,这是最后一个可用的资源?

时间:2017-03-21 15:01:29

标签: qt rcc qresource qt-resource

我们说我有 3个qrc文件。第一个 2包含相同的资源路径第三个不包含该路径,例如:

qrc1:

<RCC>
    <qresource prefix="/">
        <file>res/image.png</file>
    </qresource>
</RCC>

qrc2:

<RCC>
<qresource prefix="/">
    <file>res/image.png</file>
</qresource>

qrc3:

<RCC>
<qresource prefix="/">
</qresource>

按如下方式加载资源:

QResource::registerResource("qrc1.rcc");
QResource::registerResource("qrc2.rcc");
QResource::registerResource("qrc3.rcc");

所以 rcc 文件以上述顺序注册。所以当有人试图获得qrc:/res/image.png时,会得到哪个文件?从第一个包含相应资源(来自qrc1)或最后成功加载的rcc(来自qrc2)的rcc?我无法在文档中找到答案。

我的测试显示它从第一个成功加载的rcc中获取资源,即使我期望从最后一个rcc获取它。我应该怎么做才能从上次成功加载的rcc中获取资源?有任何想法吗?有人理解资源加载原则的顺序吗?感谢。

0 个答案:

没有答案