Qt中QTeeWidget的简单使用

来源:互联网 发布:浏览器默认端口号80 编辑:程序博客网 时间:2024/05/01 05:17
//mytreewidget.h#ifndef MYTREEWIDGET_H#define MYTREEWIDGET_H#include <QWidget>class QTreeWidget;class QTreeWidgetItem;class MyTreeWidget : public QWidget{   Q_OBJECTpublic:   explicit MyTreeWidget(QWidget *parent = 0);   signals:   public slots:   void itemDoubleClickedSlot(QTreeWidgetItem* item,int column);   private:   QTreeWidget *tree;};#endif // MYTREEWIDGET_H


 

 

 

//mytreewidget.cpp#include "mytreewidget.h"#include <QTreeWidget>#include <QIcon>#include <QList>#include <QMessageBox>MyTreeWidget::MyTreeWidget(QWidget *parent) :   QWidget(parent){   tree = new QTreeWidget(this);   //设置QTreeWidget的列数   tree->setColumnCount(1);   //设置QTreeWidget标题头隐藏   tree->setHeaderHidden(true);   //创建QTreeWidget的头节点,父节点是tree   QTreeWidgetItem *Friend = new QTreeWidgetItem(tree, QStringList(QString(tr("好朋友"))));   //给Friend节点增加一个子节点   QTreeWidgetItem *hahaya = new QTreeWidgetItem(Friend);   hahaya->setText(0, tr("hahaya"));   hahaya->setIcon(0, QIcon(tr("hahaya.png")));   //QTreeWidget添加节点的另一种方法   QTreeWidgetItem *ClassMate = new QTreeWidgetItem(tree, QStringList(QString(tr("同学"))));   //Fly是ClassMate的子节点   QTreeWidgetItem *Fly = new QTreeWidgetItem(ClassMate, QStringList(QString(tr("fly"))));   QTreeWidgetItem *Strange = new QTreeWidgetItem(tree);   Strange->setText(0, tr("陌生人"));   QList<QTreeWidgetItem*> list;   list.append(ClassMate);   list.append(Strange);   tree->insertTopLevelItems(0, list);   //展开QTreeWidget的所有节点   tree->expandAll();   //响应鼠标在QTreeWidget节点上的双击事件   connect(tree, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)), this, SLOT(itemDoubleClickedSlot(QTreeWidgetItem*,int)));   this->setWindowTitle(tr("QTreeWidget的使用"));   this->resize(200, 500);   //设置应用程序的图标   this->setWindowIcon(QIcon("hahaya.png"));}void MyTreeWidget::itemDoubleClickedSlot(QTreeWidgetItem* item,int column){   QMessageBox::warning(this, tr("响应双击事件"), tr("你双击了item"), QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);}


 

 

 

//main.cpp#include <QApplication>#include <QTextCodec>#include "mytreewidget.h"int main(int argc, char *argv[]){   QTextCodec::setCodecForTr(QTextCodec::codecForLocale());   QApplication app(argc, argv);   MyTreeWidget window;   window.show();   app.exec();}


 

原创粉丝点击