
QTreeWidget类提供了一个使用预定义的树型模型的树型视图。
QTreeWidget类是一个便利类 ,它提供了一个带有经典的基于条目的接口的标准树型部件 ,与Qt 3 中 QListView 类所使用的类似。这个类是基于 Qt的 模型/视图架构来实现的,它使用了一个默认的模型来储存数据条目,其中每个条目是一个 QTreeWidgetItem 。
那些不需要模型/视图框架的强大灵活性的开发者 ,可以使用这个类来轻易地创建一个简单的层次型列表。更灵活的实现方式就是将一个 QTreeView 与一个标准条目模型结合起来使用 。这使得数据的存储与它的表现相分离 。
在最简单的形式下,一个树型部件可以这样来构造:
QTreeWidget *treeWidget = new QTreeWidget ();
treeWidget-> setColumnCount (1);
QList < QTreeWidgetItem *> items;
for ( int i = 0; i < 10; ++i)
items.append(new QTreeWidgetItem (( QTreeWidget *)0, QStringList ( QString ("item: %1").arg(i))));
treeWidget-> insertTopLevelItems (0, items);
在妳将条目添加到树部件中去之前 ,必须使用 setColumnCount ()来设置列数。这就使得每个条目都可以拥有 1个或多个文本标签或其它的装饰性内容。可使用 columnCount ()函数来查询出当前使用的列数 。
树部件中可以加入一个表头元件 ,其中包含着部件中每一列对应的表头文字。最简单的设置各个表头区域的方法就是调用 setHeaderLabels ()并且提供一个字符串数组 ,但是,可以使用 QTreeWidgetItem 来构造一个自定义的表头,并且使用 setHeaderItem ()函数来插入到树部件中 。
树中的条目可以根据不同的列按照预定义的排序规则来排序 。如果启用了排序功能的话 ,则,用户可以通过单击表头中的某列来进行排序。可调用 setSortingEnabled() 来启用或禁用排序功能。通过 isSortingEnabled() 来查询当前是否已经启用排序 。
|
|
|
一个 Plastique风格 的树部件。 |
参考 QTreeWidgetItem 、 QTreeWidgetItemIterator 、 QTreeView 、 模型/视图编程 和 设置信息编辑器示例 。
李娜
HxLauncher: Launch Android applications by voice commands