找回密码
 立即注册
收起左侧

子线程中更新ListModel后,Qml界面不刷新

0
回复
4577
查看
[复制链接]

尚未签到

来源: 2020-4-11 13:53:22 显示全部楼层 |阅读模式
1Qter豆
新手使用Qml 遇到问题,请教一下~
我用Qml 的ListView 做的显示,其中用了C++ 中写的QAbstractListModel 子类模型,在界面上按钮相响应中,修改ListModel 内容后可以正确更新Qml ListView的显示,
但是如果吧ListModel 的更新操作放到一个C++ 子线程中执行,就无法刷新ListView 显示;
查看程序执行,发现执行了 ListModel 的rowCount() 函数,并且返回了正确的行数,但是 data() 函数一直没有调。
这个初步怀疑是子线程的问题,但是不知道该怎么处理?
尝试了给ListMode 加个信号,连接到Qml ListView 的槽上,可以正确发送信号,但是不知道怎么更新这个ListView ?

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了