qtablewidget样式,qtreewidgetitem样式

  qtablewidget样式,qtreewidgetitem样式

  QTreeWidget类的详细描述使用预定义的树模型提供了一个树视图。

  QTreeWidget类是一个很有用的类,它提供了一个标准的TreeWidget,里面包含了经典的基于项目的接口,比如Qt 3的QListView类。这个类是一个基于Qt的模型/查看器架构,使用默认模型来存储项目。每一项都是QTreeWidgetItem。

  不需要模型/视图框架的灵活性的开发人员可以使用这个类来创建简单的分层列表。更灵活的方法是将QTreeView与标准项目模型相结合。这就把数据的存储和显示分开了。

  在最简单的格式中,可以通过以下方式构建树部件:

  qtreewidget * tree widget=newqtreewidget(;树组件集列计数(1;QListQTreeWidgetItem * itemsfor(intI=0;i 10I)items . append(newqtreewidgetitem((qtreewidget *)0,qstringlist)qstring( item 3360% 1 )。arg ) ) tred

  在向树小部件添加项目之前,必须使用setColumnCount()来设置列数。这允许你为每件物品添加一个或多个标签和其他装饰。使用的列数可以在columnCount()函数中找到。

  一个树可以有包含部件列的标题。在setheaderlabel()中提供一个字符串列表是标注每个部分最简单的方法,但是可以使用QTreeWidgetItem创建一个自定义标题,然后在树中插入setHeaderItem))函数。

  您可以根据预定义的排序顺序按列对树中的项目进行排序。启用排序后,用户可以单击列标题对项目进行排序。您可以通过调用setSortingEnabled()来启用或禁用排序。isSortingEnabled()函数用于指示是否启用排序。

  示例# includeq application # includeQTreeWidget # includeQTreeWidget Item # includekheaderviewtmain(intargc,char *argv[] //清除树控件内容的树组件-Clear(;//隐藏wood-header ()-hide)的树组件;//标题树组件——设置窗口标题(qtreewidget很好用);//将触发器编辑条件设置为“无(默认)树组件”(qabstractemview 33603360 noedittriggers);//第一种写法:item的父控件是tree component/* QTreeWidgetitem * disk item=newQTreeWidgetitem(tree component,QTreeWidgetitem * disk item=newQTreeWidgetitem(tree widget item,QStringList(),直接表示QStringList)) QTreeWidgetitem * disk eitem=newQTreeWidgetitem(tree component,QStringList() document(e));QtreeWidgetItem * DiskfItem=newqtreeWidgetItem(tree widget,QStringList() entertainment(f));//第二种写法是:addtoplevelitem(调用API TreeWidgetQtreeWidgetItem)disk item=newqtreeWidgetItem(qstringlist) local item qtreeWidgetItem * diskeitem=newqtreeWidgetItem(qstringlist()" document(e)");QtreeWidgetItem * DiskfItem=NewQTreeWidgetItem(qstringList() Entertainment(f));树组件-

  gt;addtoplevelitatin(diskcitem);tree widget-addtoplevelitatient(diskditem);tree widget-addtoplevelitatient(软盘);tree widget-addtoplevelitatient(diskfitem);diskCitem-setIcon(0,qicon(/RES/disk icon));diskDitem-setIcon(0,qicon(/RES/disk icon));diskettem-seticon(0,qicon(/RES/disk icon));diskFitem-setIcon(0,qicon(/RES/disk icon));QTreeWidgetItem* cppItem=新qtreewidgetitem(qstringlist() c );qtreewidgetitem * javaitem=new qtreewidgetitem(qstringlist() Java );qtreewidgetitem * py item=new qtreewidgetitem(qstringlist() python );disk citem-addchild(cppitem);disk citem-addchild(javaitem);disk citem-addchild(py item);cppitem-setcon(0,qicon(:/RES/file icon));javaitem-setcon(0,qicon(:/RES/file icon));pyitem-setcon(0,qicon(/RES/file icon));QTreeWidgetItem* qqItem=新建];qtreewidgetitem * we chat item=new;qtreewidgetitem * Sina item=newdiskditem-addchild(QQ item);diskditem-addchild(微信项);diskditem-addchild(新浪项目);qqItem-setIcon(0,qicon(:/RES/file icon));wechatitem-setcon(0,qicon(:/RES/file icon));新浪item-setcon(0,qicon(:/RES/file icon));qtreewidgetitem * mv 1 item=new qtreewidgetitem(qstringlist() 《葫芦娃》 );QTreeWidgetItem* mv2Item=新qtreewidgetitem(qstringlist() 《西游记》 );QTreeWidgetItem* mv3Item=新qtreewidgetitem(qstringlist() 《水浒传》 );diskettem-addchild(mv 1项);diskettem-addchild(mv 2项);diskettem-addchild(mv 3项);mv 1 item-setcon(0,qicon(:/RES/file icon));mv 2 item-setcon(0,qicon(:/RES/file icon));mv 3 item-setcon(0,qicon(:/RES/file icon));qtreewidgetitem * song 1 item=newqtreewidgetitem * song 2 item=newqtreewidgetitem * song 3 item=newdiskfitem-addchild(song 1 item);diskfitem-addchild(宋2项);diskfitem-addchild(宋3项);song 1 item-setcon(0,qicon(/RES/file icon));宋2项-setcon(0,qicon(:/RES/file icon));宋3项-setcon(0,qicon(:/RES/file icon));tree widget-expandall();treeWidget展示();返回a . exec();}

最顶层的项用addTopLevelItem()函数来加入,每个项的子项用addChild()函数来加入。

美元

  运行结果截图

  源代码:QTreeWidget简单使用

qtablewidget样式,qtreewidgetitem样式