原博文链接: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_
来源:CSDN
原文:https://blog.csdn.net/CLinuxF/article/details/78505012
版权声明:本文为博主原创文章,转载请附上博文链接!