问题:
在逻辑中使用了, QAbstractItemView::setRootIndex(const QModelIndex & index),
第一次设置生效, view 进入了model 中指定的item, view 内只显示该item内部的children items. 这个效果是我要的.
bug:
对 model, view,等做过一些操作后(最有代表性的是:过滤), root item 不再是我人为设定的了, 变成了"整棵树"原始model的root.
重现方式:
用 QFileSystemModel 方式, 查阅 某指定文件目录, 并对其内容过滤, 再之后"清空"过滤条件; 若 root model index 丢失, 则view会显示整个计算机目录.
bug原因:
在过滤等操作时, 如果没有任何东西被"接受"(accept), 则指定的 root model index 丢失, 因此失效.
解决:
至少在过滤时, 让指定的 root index "通过"过滤, 保证了 root model index 的有效性.
QAbstractItemView::setRootIndex(const QModelIndex & index) 失效,布布扣,bubuko.com
QAbstractItemView::setRootIndex(const QModelIndex & index) 失效
原文地址:http://www.cnblogs.com/LiuxuLisa/p/3781862.html