• 5617阅读
  • 3回复

QAbstractItemModel 插入数据的问题,饭都吃不下了。大家快来帮下忙。 [复制链接]

上一主题 下一主题
离线guhan010
 

只看楼主 倒序阅读 楼主  发表于: 2009-10-12
— 本帖被 XChinux 从 General Qt Programming 移动到本区(2011-01-02) —
代码如下:
  1. QList<QVariant> Item;
  2.     Item << tr("NewItem");
  3.     QModelIndex rootIndex = createIndex(rootItem->row(), 0, rootItem);
  4.     beginInsertRows(rootIndex, 0,0);
  5.     TreeItem* pNew = new TreeItem(Item, rootItem);
  6.     rootItem->insertChild(0, *pNew);
  7.     endInsertRows();


向树的根结点下插入一个子节点。
点击,按钮点击后没有插入,只有在点击树形列表后才能显示,但是会替换紧跟着的那一列。

看了QTreeWidget的源代码,发现它也是这样调用的啊,并且视图中并没有什么特别的诸如连接insertRows这样槽。为什么呢?

请大家帮忙看看啊。

附带所有源码,这个代码是在论坛下载的,我修改了基础作测试。
TreeModel.rar (2402 K) 下载次数:23
离线guhan010

只看该作者 1楼 发表于: 2009-10-12
那个兄弟帮帮忙啊。。。。
离线guhan010

只看该作者 2楼 发表于: 2009-10-12
竟然没有兄弟帮忙啊,我顶顶顶。
等待版主帮忙。
离线mmmou2000
只看该作者 3楼 发表于: 2009-10-13
1) 重载bool QAbstractItemModel::insertRows ( int row, int count, const QModelIndex & parent = QModelIndex() )
2) 在你的slot: insertnewRow() 中调用 insertRow(row)或则insertRows(row, 1);
快速回复
限100 字节
 
上一个 下一个