Qt中QTeeWidget的简单使用

//mytreewidget.h
#ifndef MYTREEWIDGET_H
#define MYTREEWIDGET_H
#include <QWidget>
class QTreeWidget;
class QTreeWidgetItem;
class MyTreeWidget : public QWidget
{
   Q_OBJECT
public:
   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();
}


 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值