本文主要是介绍Qt QtreeWidget树形结构图表,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
本例子采用treewidget类:他继承自treeview相对于treeview能简单方便一点。
本例思路:
三个root节点,每个root节点在添加child节点对应在child节点里添加item(项)。
具体看:
QTreeWidgetItem *additem();void addroot(QTreeWidget *rootwidget,QStringList list)
#include <QApplication>
#include<QDebug>
#include <QtCore/qglobal.h>
#include<QWidget>
#include<QStandardItemModel>
#include<QTableView>
#include<QHeaderView>
#include<QTreeWidget>
#include<QTreeWidgetItem> /**************************** 添加child节点* ****************************/
QTreeWidgetItem *additem()
{
QTreeWidgetItem *item1=new QTreeWidgetItem;
item1->setText(0,"yang");
item1->setText(1,"sen");
item1->setText(2,"hounan");
return item1;
} /*************************** 添加root节点* ********************************/
void addroot(QTreeWidget *rootwidget,QStringList list){
QTreeWidgetItem *widgetitem=new QTreeWidgetItem(rootwidget);
widgetitem->setText(0,list.at(0));
widgetitem->setText(1,list.at(1));
widgetitem->setText(2,list.at(2));
rootwidget->addTopLevelItem(widgetitem);
widgetitem->addChild(additem());
widgetitem->addChild(additem());
widgetitem->addChild(additem());
}
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
// QStandardItemModel *model=new QStandardItemModel;
// QStringList list;
// list<<"姓名"<<"性别"<<"年龄"<<"手机"<<"地址";
// model->setHorizontalHeaderLabels(list);
// model->setRowCount(4);
// model->setColumnCount(5);
// model->setItem(0,0,new QStandardItem("yangsen"));
// //model->removeRows(0,model->rowCount());
// model->removeRow(0);
// QTableView *view=new QTableView;
// view->setModel(model);
// view->setColumnWidth(2,200);
// view->verticalHeader()->hide();
// view->horizontalHeader()->setDefaultAlignment(Qt::AlignCenter);
// view->show();
QTreeWidget *treewidget=new QTreeWidget;
//treewidget->setFixedWidth(300);
//treewidget->horizontalScrollMode()->setFixedWidth(300);
treewidget->setColumnWidth(0,90);
treewidget->setColumnCount(3);
QStringList list;
list<<"姓名"<<"年龄"<<"性别";
treewidget->setHeaderLabels(list);
QStringList list1;
list1<<"one"<<"hou"<<"nan";
QStringList list2;
list2<<"two"<<"hou"<<"nan";
QStringList list3;
list3<<"three"<<"hou"<<"nan";
addroot(treewidget,list1);
addroot(treewidget,list2);
addroot(treewidget,list3);
treewidget->show();
return a.exec();
}
这篇关于Qt QtreeWidget树形结构图表的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!