首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有一种方法可以简化qresource文件描述符?

是否有一种方法可以简化qresource文件描述符?
EN

Stack Overflow用户
提问于 2018-09-20 14:39:33
回答 1查看 109关注 0票数 0

我目前有一个qml.qrc文件,如下所示:

代码语言:javascript
复制
<RCC>
    <qresource prefix="/qml">
        <file>qml/components/Icon.js</file>
        <file>qml/components/IconButton.qml</file>
        <file>qml/components/IconLabel.qml</file>
        <file>qml/main.qml</file>
        <file>qml/setup/NewProject.qml</file>
        <file>qml/setup/Setup.qml</file>
        <file>qml/setup/Startup.qml</file>
        <file>qml/workspace/AnimationWindow.qml</file>
        <file>qml/workspace/DepthChartControls.qml</file>
        <file>qml/workspace/NewAnimationWindow.qml</file>
        <file>qml/workspace/TraceWindow.qml</file>
        <file>qml/workspace/Workspace.qml</file>
        <file>qml/workspace/WorkspaceMenuBar.qml</file>
        <file>qml/Empty.qml</file>
        <file>qml/qmldir</file>
        <file>qml/Style.qml</file>
        <file>icons/play.svg</file>
    </qresource>
    <qresource prefix="/icons">
        <file>lib/material-design/icons/svg/play.svg</file>
    </qresource>
</RCC>

这使得我必须引用qml文件,比如:engine.load(QUrl("qrc:/qml/qml/main.qml")),当我想访问图标时,我必须指定:/icons/lib/material-design/icons/svg/play.svg。是否有一种方法可以简化路径,也许可以将qresources限制在一个前缀目录路径上?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-20 14:57:57

这已经是你想要的样子了。您可以将文件访问为

代码语言:javascript
复制
qrc:/qml/Icon.js
qrc:/icons/play.svg

等。

一般来说,它的工作方式如下:

代码语言:javascript
复制
<qresource prefix="PREFIX">
<file alias="ALIAS">QRC_RELATIVE_FILEPATH</file>
</qresource>

通过以下方式访问资源

代码语言:javascript
复制
qrc:PREFIX/ALIAS

ALIAS的默认值是来自QRC_RELATIVE_FILEPATH的文件名(并且只有文件名)--也就是说,示例中路径元素的使用是多余的,但支持的。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52427696

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档