QTreeWidget简单用法
2017-02-09 19:56
190 查看
1、void QTreeWidget::setHeaderLabels(const QStringList & labels)
设置表头,QStringList有几项,表头就有多少列
2、void QHeaderView::setSortIndicatorShown(bool show)
This property holds whether the sort indicator is shown.
By default, this property is false.(这里有误,经测试默认应该是true)
译:设置表头是否显示排序指示符,SortIndicator为水平标题栏文字旁边的小三角符号
如果要显示排序指示符,那么这个函数没必要调用。
3、void
QHeaderView::setSortIndicator(int logicalIndex, Qt::SortOrder order)
Sets the sort indicator for the section specified by the given logicalIndex in the direction specified by order, and removes the sort indicator from any other section that was showing it.
译:为指定的 logicalIndex字段设置排序指示符(如果是升序,就是朝上的小三角;如果是降序,就是朝下的小三角)
同时在其他的字段位置将不显示排序指示符(其实任何情况下只能在一个字段位置处显示排序指示符)。
这只是一个初始化的设置,后期用户的操作可以改变这种设置。
4、void QTreeWidget::addTopLevelItem(QTreeWidgetItem * item)
为QTreeWdiget增加顶级项目
5、void QTreeWidgetItem::addChild(QTreeWidgetItem * child)
为顶级项目增加子项目
6、void QTreeWidget::setItemWidget(QTreeWidgetItem * item, int column, QWidget * widget)
将widget控件显示到item的column列里
下面给出一些简单实例代码:
设置表头,QStringList有几项,表头就有多少列
2、void QHeaderView::setSortIndicatorShown(bool show)
This property holds whether the sort indicator is shown.
By default, this property is false.(这里有误,经测试默认应该是true)
译:设置表头是否显示排序指示符,SortIndicator为水平标题栏文字旁边的小三角符号
如果要显示排序指示符,那么这个函数没必要调用。
3、void
QHeaderView::setSortIndicator(int logicalIndex, Qt::SortOrder order)
Sets the sort indicator for the section specified by the given logicalIndex in the direction specified by order, and removes the sort indicator from any other section that was showing it.
译:为指定的 logicalIndex字段设置排序指示符(如果是升序,就是朝上的小三角;如果是降序,就是朝下的小三角)
同时在其他的字段位置将不显示排序指示符(其实任何情况下只能在一个字段位置处显示排序指示符)。
这只是一个初始化的设置,后期用户的操作可以改变这种设置。
4、void QTreeWidget::addTopLevelItem(QTreeWidgetItem * item)
为QTreeWdiget增加顶级项目
5、void QTreeWidgetItem::addChild(QTreeWidgetItem * child)
为顶级项目增加子项目
6、void QTreeWidget::setItemWidget(QTreeWidgetItem * item, int column, QWidget * widget)
将widget控件显示到item的column列里
下面给出一些简单实例代码:
#include <QTreeWidget> #include <QTreeWidgetItem> #include <QStringList> #include <QSpinBox> Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget) { ui->setupUi(this); QTreeWidget* treeWidget = new QTreeWidget(this); treeWidget->setWindowTitle("QTreeWidget"); //设定头项名称 treeWidget->setHeaderLabels(QStringList()<<"Key"<<"Value"); treeWidget->setSortingEnabled(true); //treeWidget->header()->setSortIndicatorShown(true);//设置排序指示符是否显示 treeWidget->header()->setSortIndicator(0,Qt::AscendingOrder);//为第0列设置排序指示符为升序 //设定各个项 QTreeWidgetItem* A = new QTreeWidgetItem(QStringList()<<"A"); A->setIcon(0, QIcon(":/images/a.png"));//资源文件前缀为/ A->setCheckState(0, Qt::Checked); QTreeWidgetItem* B = new QTreeWidgetItem(QStringList()<<"B"); B->setIcon(0, QIcon(":/images/b.png")); B->setCheckState(0, Qt::Checked); QTreeWidgetItem* C = new QTreeWidgetItem(QStringList()<<"C"); C->setIcon(0, QIcon(":/images/c.png")); C->setCheckState(0, Qt::Checked); treeWidget->addTopLevelItem(A);//添加顶级项A treeWidget->addTopLevelItem(B);//添加顶级项B treeWidget->addTopLevelItem(C);//添加顶级项C for(int i=0; i<3; ++i)//给A添加子项目 { QStringList columItemList; QTreeWidgetItem *child; QString key, value; key += "a" + QString::number(i); value += QString::number(i); columItemList<<key<<value; child = new QTreeWidgetItem(columItemList); A->addChild(child); treeWidget->setItemWidget(child,1,new QSpinBox);//将QSpinBox显示到child项的第一列里 } treeWidget->show(); }
treeWidget->setItemWidget(child,1,new QSpinBox)这句代码调用之后会遮住value列的值,可以注释掉
相关文章推荐
- qt中 accept()和ignore()函数
- Qt5---ftp上传功能(可直接克隆某个小模块,查看QT下FTP的socket原理)
- 图像识别(11)——LED灯光点捕获+基于QT平台绘制轨迹(1)
- QTSSDictionary 例子
- MQTT topic匹配规则基础
- 在QT中引用Shark Machine Learning library
- Qt使用windows API获取程序运行时占用内存 good
- Qt——线程类QThread
- Qt使用com组件的一点小心得(使用dumpcpp生成.h和.cpp文件)
- Qt官方开发环境生成的exe发布方式--使用windeployqt
- QTableWidget详解
- Qt设置美观按钮
- Qt实现自定义按钮的三态效果
- Qt中怎么样创建图片按钮
- QSharedMemory
- Qt程序发布
- 【转】Qt在pro中设置运行时库MT、MTd、MD、MDd,只适合VS版本的Qt
- Qt入门之信号与槽机制
- Qt入门之信号与槽机制
- Qt入门之信号与槽机制