问题:

在逻辑中使用了, 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) 失效的更多相关文章

  1. NULL字段对于UNIQUE INDEX失效

  2. Qt Model/view 小实例 文件目录浏览器

    1. 文件目录浏览器 直接在main.cpp文件中添加下列代码 #include "mainwindow.h" #include <QApplication> #inc ...

  3. QT信号和槽

    QT信号和槽 ============ 信号和槽是一种高级接口,应用于对象之间的通信,它是 QT 的核心特性.要正确的处理信号和槽,必须借助一个称为 moc(Meta Object Compiler) ...

  4. Qt深入浅出(十五)QTableView

    转载:吓人的猿 TableView 表格视图控件QTableView,需要和QStandardItemModel, 配套使用,这套框架是基于MVC设计模式设计的,M(Model)是QStandardI ...

  5. Qt QTableView 表格内添加控件

    目录 Qt QTableView 表格内添加控件 1. QItemDelegate 2. setIndexWidget 3. setIndexWidget + setLayout Qt QTableV ...

  6. Qt之QHeaderView自定义排序(获取正确的QModelIndex)

    简述 前几节中分享过关于自定义排序的功能,貌似我们之前的内容已经可以很好地解决排序问题了,但是,会由此引发一些很难发现的问题...比如:获取QModelIndex索引错误. 下面,我们先来实现一个整行 ...

  7. 强化:把treeview的QString路径转换为QModelIndex节点,有了节点就什么都好办了

    http://doc.qt.io/qt-4.8/qdirmodel.html#index-2 甚至还能直接调用setData: setData(const QModelIndex &index ...

  8. QModelIndex 与 QStandardItem互转

    1. QModelIndex 转换成QStandardItem QStandardItem * item=QStandardItemModel::​itemFromIndex(const QModel ...

  9. QT界面 使用QStyledItemDelegate QPainter QStyleOptionViewItem QModelIndex组合实现项的绘制

    QStyledItemDelegate类为来自模型的数据项提供了显示和编辑工具. 当在Qt项视图(例如QTableView)中显示来自模型的数据时,各个项由委托(delegate)绘制.此外,当编辑一 ...

随机推荐

  1. 【转载】说说JSON和JSONP,也许你会豁然开朗,含jQuery用例

    前言: 说到AJAX就会不可避免的面临两个问题,第一个是AJAX以何种格式来交换数据?第二个是跨域的需求如何解决?这两个问题目前都有不同的解决方案,比如数据可以用自定义字符串或者用XML来描述,跨域可 ...

  2. 【C# 小窍门】WeakEventManager 无法识别!ErrorCS0246The type or namespace name 'WeakEventManager' could not be found

    WeakEventManager 想用一下这个,在学习C# 事件的时候,结果添加了Using System.Windows, WeakEventManager却一直是红色的,无法识别,报这个错哦~ 好 ...

  3. Java操作excel

    慕课网的好课程: http://www.imooc.com/learn/354

  4. SQL中EXISTS的用法

    比如在Northwind数据库中有一个查询为SELECT c.CustomerId,CompanyName FROM Customers cWHERE EXISTS(SELECT OrderID FR ...

  5. People Tools catalog tables.

    People Tools catalog tables. Projects PSPROJECTDEFN — Project header table PSPROJECTITEM — Definitio ...

  6. activiti当前任务高亮(解决乱码问题)

    package com.xinwei; import java.io.File; import java.io.InputStream; import java.util.ArrayList; imp ...

  7. Shopex4.85商派2014年商业模板和商业插件共600多套仅售600元送分销王2代SEO排名神具。

    这批shopex商业插 件+模板都是本人从官方模板网站收购.高价.交换.以及收藏得来.本人因现实工作太忙不得不转手出售这批源代码,限时低价出售给和我一样从事shopex 系统网店电子商务的兄弟姐妹们, ...

  8. 基于webpack使用ES6新特性(转载)

    本文转载自: http://www.tuicool.com/articles/vye2ea6

  9. 8139too.c网卡驱动简单分析

    从事linux C开发工作以来,工作内容主要是在应用层,对nginx和unbound等软件有些了解,也常对这2个软件进行二次开发. 对网络这块一直比较有兴趣.也很好奇网卡到底是怎么接受到报文的,以及报 ...

  10. 增加VirtualBox虚拟机的磁盘空间大小(Host:Win7 VirtualBox5.0.16 VM:Win10)

    1 前言 网上关于增加VirtualBox虚拟机的磁盘空间大小的文章非常非常多,这里我之所以再写一篇,是因为在参照这些文章做的时候,由于VirtualBox的版本更新以及其他一些环境问题,碰到到一些问 ...