怎么样才可以在发每条路信息的时候加上图片

在使用kindEditor编辑器时发现一个问题。kindEditor的图片上传本系统是完全OK啦但是作为借口传出去呢?就会访问不到图片我们看下上传后的图片地址,是从工程名开始的没有服务器地址。所以外部当然调不到啦那么怎么解决呢。看看kindeditor.js里面的一个方法:

我们就可以在这里拼接src了


QML 的一些小内容:

下面这段代码是鈈会正常工作的

fromLocalFile 只能接受一个本地硬盘的文件,正确的写法如下

这里顺带说明一点在网上搜到一些文章中使用的时 setSource(QUrl("qrc:qml/main.qml")) 这种写法,但是事實证明这种写法是不正确的qrc: 这种引用资源的方法应该是在 QML 文件中使用的,在 C++ 只需要冒号就可以了加上 qrc 前缀反而找不到了。 

是放置 main.qml 的路徑的一部分而「:qml/main.qml」这个可以用,完全是因为 Qt 还是到本地的 qml 目录下面去找到了 main.qml 文件而不是资源里面的那个

专门研究了一下关于应用资源时的 qrc 前缀问题Qt 文档里对这个问题只字未提,这里补充上:

在C++中引用资源加不加 qrc: 前缀实际上跟引用资源的方法有关如果在引用资源时使用了 QUrl 这个类,则必须在资源文件的路径前面加上「 qrc:」 否则,QUrl 只会到本地目录去搜索例如:


相反,如果没有使用 QUrl 这个类则不能使用 「qrc:」,而必须用「 :」否则同样会找不到文件!例如:

在 QML 中访问 qrc 中的资源可以使用 qrc:/ 加资源在qrc文件中的完整路径,如果 QML 文件本身就在 qrc 资源文件中还可以使用 qrc: (没有斜杠)加资源相对当前 QML 文件的路径来获取。


假如当前 QML 文件位于资源中并且位置为 qrc:/qml/main.qml ,那么下面这段代码和上面的等效: 没有 list 类型所以在 QML 组件间,不能够直接用属性传递字符串数组这样的内容

如果必须的话可以使用一个JS文件定义文件,在两个 QML 中都 import 這个JS文件来传递内容但是这样相当于全局变量而不是组件的内部属性,依然有局限性

也许是因为C++的思维惯性,在使用 QML 的时候总很有一種很闷骚很不爽的感觉控件的属性值不能直接用 JS,LineEdit(QML 称为 TextInput) 只有 onAccepted 一个信号明明很简单的一个逻辑它就是做不了,有时候不得不写一堆 Hard code ..


我要回帖

更多关于 美团 的文章

 

随机推荐