qml loader的问题

菜园小火车 2014-03-07 11:54:12
我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"
...全文
329 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
彩阳 2014-10-16
  • 打赏
  • 举报
回复
看看你的路径整不正确,很有可能读到了以前的文件。以前的文件并没有修改,使用clean,然后再试试。或者删除build-XXX文件夹。
u010326561 2014-10-16
  • 打赏
  • 举报
回复
或许你可以试试 构建 菜单中的清理项目,然后重新构建,或者清楚实际的build文件夹再重新构建试试...我现在项目大了之后经常需要清理重新构建才能看到修改之后的效果

16,216

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧