我main.qml中见用Loader加载了 Mylable.qml 然后通过点击事件轮流加载Mylable.qml 和Mylabel2.qml。现在的问题是:在点击时间的过程中,我在外面直接修改了Mylabel.qml的内容,程序Loader的也是最开始的Mylabel.qml,而不是外面被修改过的。我现在要外面修改了,里面点击后重新加载的也是被修改后的。
代码:
main.qml:
import QtQuick 2.0
Rectangle {
width: 360
height: 360
Loader{
id:myload
asynchronous : false
source:"Mylabel.qml"
}
property int count: 0
MouseArea {
anchors.fill: parent
onClicked: {
myload.source = "";
if(count%2 === 0) {
myload.source = "Mylabel2.qml";
} else {
myload.source = "Mylabel.qml";
}
count++;
}
}
}
Mylabel.qml:
import QtQuick 2.0
Rectangle {
width: 100
height: 62
Text{
text:qsTr("asdfsdfsdfs")
}
}
Mylable2.qml:
import QtQuick 2.0
Rectangle {
width: 100
height: 62
Text{
text:"gggggggggg"
}
}
我在通过文本编辑器直接修改Mylable.qml 中的text:为"aaaaaaa" 界面上点击的还是"asdfsdfsdfs"
------解决思路----------------------
或许你可以试试 构建 菜单中的清理项目,然后重新构建,或者清楚实际的build文件夹再重新构建试试...我现在项目大了之后经常需要清理重新构建才能看到修改之后的效果
------解决思路----------------------
看看你的路径整不正确,很有可能读到了以前的文件。以前的文件并没有修改,使用clean,然后再试试。或者删除build-XXX文件夹。