QTreeWidgetItem中的setData函数,
void QTreeWidgetItem::setData ( int column, int role, const QVariant & value )
我在用的时候,在一个叶子节点中保存多个数据,是采用setData(1,32,data1),setData(2,32,data2)....这种方式。但是我实在是搞不明白,这个column作用是干什么的?有什么意义???
如果说我采用model/view方式,自己定义model能不能实现一个叶子节点保存多个数据这种效果??
不知道你这个问题是否已经解决, 如果还没有解决的话:QTreeWidgetItem 类提供了一个与 QTreeWidget 类一起使用的项目。例:
QTreeWidgetItem *cities = new QTreeWidgetItem(treeWidget);
cities->setText(0, tr("Cities"));
QTreeWidgetItem *osloItem = new QTreeWidgetItem(cities);
osloItem->setText(0, tr("Oslo"));
osloItem->setText(1, tr("Yes"));
1、enum QTreeWidgetItem::ChildIndicatorPolicy
2、enum QTreeWidgetItem::ItemType:此枚举描述了用于描述树小部件项的类型。
可以在 QTreeWidgetItem 子类中定义新的用户类型。
1、void addChild(QTreeWidgetItem *child)
void addChildren(const QList<QTreeWidgetItem *> &children)
添加子项。
2、QTreeWidgetItem * child(int index)
返回项的子项列表中index处的项。
3、int childCount()
子项数目。
4、QTreeWidgetItem * clone()
创建项目及其子项的深拷贝。
5、int columnCount()
返回项目中的列数。
6、int indexOfChild(QTreeWidgetItem *child)
返回项的子项列表中给定子项的索引。
7、void insertChild(int index, QTreeWidgetItem *child)
void insertChildren(int index, const QList<QTreeWidgetItem *> &children)
在子项列表中的索引处插入子项。如果child已经插入其他地方,则不会再次插入。
8、void removeChild(QTreeWidgetItem *child)
移除 child 指示的给定项目。移除的项目不会被删除。
9、void sortChildren(int column, Qt::SortOrder order)
根据给定列中的值,使用给定顺序对项目的子项进行排序。
注意:如果项目不与 QTreeWidget 关联,则此函数不执行任何操作。
10、QTreeWidgetItem * takeChild(int index)
移除索引处的项目并返回。
11、QList<QTreeWidgetItem *> takeChildren()
移除子项列表并返回它。