原博文链接:https://blog.csdn.net/CLinuxF/article/details/78505012
今天用QML中Image加载win系统下的本地路径图片的时候,
发现无论加绝对路径或file://+path都打不开,就很奇怪,经过一番
查阅发现,各个系统的加载方式都不相同,
win系统:
Image { id: previewImage anchors.fill: parent source: "file:///"+"C:/Desert.jpg" fillMode: Image.PreserveAspectCrop } 绝对路径前面要加 "file:///"三个下划线,否则加载不出来 linux系统和安卓系统:
这两个系统是一样的路径:“file://”+path
Image { id: previewImage anchors.fill: parent source: "file://" +"/storage/emulated/0/Tencent/QQfile_recv/AAAEDED.png" fillMode: Image.PreserveAspectCrop } 绝对路径前面要加"file://"两个下划线,否则会报错加载不出来 资源环境加载:
再QML中加载资源环境和qtC++中加载不一样,不用加前缀:qrc://
Image { id: previewImage anchors.fill: parent source: "/icon.png" fillMode: Image.PreserveAspectCrop } 直接下划线加文件名称,当然文件包含着文件夹中就要加上文件夹的名称 例如:
Image { id: previewImage anchors.fill: parent source: "/image/icon.png" fillMode: Image.PreserveAspectCrop } 此时icon.png就是再image这个文件夹中,前面是直接放在主文件夹中。
好了!基本上就是这是区别,虽然很基础但是遇见了也是很头疼的问题,
希望能帮到有用的人! --------------------- 作者:Fu_Lin_ 来源: 原文:https://blog.csdn.net/CLinuxF/article/details/78505012 版权声明:本文为博主原创文章,转载请附上博文链接!