首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Qt dataChanged信号慢一些,然后隐藏/显示视图

Qt dataChanged信号慢一些,然后隐藏/显示视图
EN

Stack Overflow用户
提问于 2014-03-12 13:47:06
回答 1查看 1K关注 0票数 2

我实现了我自己的QAbstractItemModel (对于TreeView)并覆盖了setData方法,这个方法改变了许多孩子。

  • 如果我在一个大视图上发射一个"dataChanged“信号,它会非常慢,ui会冻结。
  • 如果我取消对信号的注释,它会非常快,但是我必须与ui交互(因为模型没有通知视图)。
  • 如果我打破了模型/视图的概念,然后调用隐藏,然后在TreeView上显示方法,那么它是快速的,所有的更改都会被显示.

为什么隐藏/显示呼叫工作?

为什么数据传输信号这么慢?

代码语言:javascript
复制
firstIndex = idx.parent().child(firstChangedIndex.row(), 0)
self.dataChanged.emit(firstIndex, firstIndex)

firstChangedIndex =最高父级,这会发生变化,但可能没有第2列。

EN

回答 1

Stack Overflow用户

发布于 2014-03-13 12:46:30

我发现我的错误..。Trolltech模型已经启用..。谢谢你用无效的QModelIndex提示.做得很好

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22353532

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档