QTreeWidget的用法

QTreeWidgetItem有九个重载的函数,如果在构造的时候指定了parent,就不需要在后面用insertTopLevelItems来插入到里面,如果没有指定parent,就把所有的根节点放到QList中,然后使

用insertTopLevelItems(int,QList)插入到QTreeWidget里面

QTreeWidgetItem::addChild(QTreeWidgetItem*)用于根节点添加子节点

QTreeWidget::setColumnCount用于设置表中的列的列数目,在表头中会有对应的显示,如果要隐藏表头,使用QTreeWidget::setHeaderHidden()

 

同样想QListWidget和QTableWidget一样,可以在每一item前面添加上选框和ICON,也可以使用QTableWidget的方法来检查前面的选框是否选中

 

 

添加表头的两种方法
方法一:
QStringList header;
header<<"ECJTU"<<"CERT";
treewidget->setHeaderLabels(header); //设置表头
方法二:
QStringList header;
header<<"ECJTU"<<"CERT";
QTreeWidgetItem *head=new QTreeWidgetItem((QTreeWidget*)0,header);
treewidget->setHeaderItem(head); 

 


返回表头指针QTreeWidgetItem * QTreeWidget::headerItem () const

QTreeWidgetItem::setSortingEnabled(bool)可以用来设置是否可以排序,当为true时候,点击表头,会自动排序

openPersistentEditor和closePersistentEditor用来控制某一item是否可以编辑

clear将会清除所有的item

 

 

QTreeWidgetItem * QTreeWidget::currentItem () const返回当前的item指针,
int QTreeWidget::currentColumn () const放回当前item的列编号

 

QTreeWidgetItem * QTreeWidget::itemAt ( int x, int y ) const返回给定的位置的item指针
QTreeWidgetItem * QTreeWidget::itemBelow ( const QTreeWidgetItem * item ) const
返回指定的item下面item
与之对应的是
QTreeWidgetItem * QTreeWidget::itemAbove ( const QTreeWidgetItem * item ) const
返回指定的item上面item

 

查找item时候,通QListWidget和QTableWidget一样,同样有多个查找匹配模式
QList QTreeWidget::findItems ( const QString & text, Qt::MatchFlags flags, int column = 0 ) const

 

 

 

当当前的item发生变化时候,会发出信号
currentItemChanged ( QTreeWidgetItem * current, QTreeWidgetItem * previous )
类同信号itemChanged ( QTreeWidgetItem * item, int column )
itemClicked ( QTreeWidgetItem * item, int column )
当双击某个item或者按下enter键时候,会发出信号
void QTreeWidget::itemActivated ( QTreeWidgetItem * item, int column ) 
表示使能了某个item
等同于信号itemDoubleClicked ( QTreeWidgetItem * item, int column )和 itemPressed ( QTreeWidgetItem * item, int column )

 

 

查看源代码示例

 

查看源代码示例

你可能感兴趣的:(QT文章)