StupidBeauty
Read times:1152Posted at:Sun Feb 2 19:45:04 2014
- no title specified

Qt4.8文档翻译:QTreeWidgetItem类参考,QTreeWidgetItem Class Reference

详细说明

QTreeWidgetItem类提供了一个可与 QTreeWidget 便利类配套使用的数据条目

树部件数据条目对象用于在树部件中储存整行的数据。各行数据通常都包含多列数据,其中每列数据都可以包含一个文本标签和一个图标。

QTreeWidgetItem类是一个便利类 ,它取代了Qt 3 中的QListViewItem 类。它提供了一个可用于 QTreeWidget 类的数据条目

条目在构造时通常会指定一个亲代对象 ,该亲代对象或者是一个 QTreeWidget (这样创建的就是顶级条目) ,或者是一个QTreeWidgetItem (这样创建的就是树中较低级别的条目)。例如,以下代码 ,构造了一个表示世界中的城市的顶级条目,然后向该条目中加入了一个子代条目 Oslo

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"));

条目可在构造时指定它们所要跟随的条目,以便形成一个特定的添加顺序:

QTreeWidgetItem *planets = new QTreeWidgetItem (treeWidget, cities);

planets->setText(0, tr("Planets"));

单个条目中的每个列都可以使用 setBackground ()函数来设置它独有的背景画刷 。当前的背景画刷可使用 background ()函数来查询 。每列的文本标签都可以使用它独有的字体和画刷来渲染。这些属性是使用 setFont ()和 setForeground ()函数来设置的 ,使用 font ()和 foreground ()函数来读取的。

在树中的顶级条目和较低级条目之间的主要区别就是 ,顶级条目没有亲代条目( parent ())。这个信息可用来区别不同的条目 ,并且在向树中插入条目或从树中删除条目时也狠有用。单个条目的子代条目可使用 takeChild ()来删除 ,可使用 insertChild ()函数来将子代条目插入到指定的下标处。

默认情况下 ,条目都是启用的、可选中的、可勾选的,并且可作为一个拖放操作的数据源。每个条目的标志位都可以通过使用适当的参数 (参考 Qt::ItemFlags )调用 setFlags ()的方式来改变。可勾选的条目 ,可使用 setCheckState ()函数来勾选或取消勾选。相应地 checkState ()函数会告知当前条目是否已经被勾选

子类化

当妳对QTreeWidgetItem进行子类化以提供自定义条目时 ,可以为它们定义新的类型,这样就可以将它们与标准的条目区分开来。那些需要这一特性的子类 ,要在它们的构造函数中调用基类的构造函数,并且使用一个大于或等于 UserType 的新的类型值作为参数。

参考 QTreeWidget QTreeWidgetItemIterator 模型/视图编程 QListWidgetItem QTableWidgetItem

成员函数文档

void QTreeWidgetItem::addChild ( QTreeWidgetItem * child )

child条目追加到子代条目列表中

参考 insertChild ()和 takeChild ()

Megumi Yokoyama

Your opinions
Your name:Email:Website url:Opinion content:
- no title specified

HxLauncher: Launch Android applications by voice commands