QTreeWidget的简单使用

QTreeWidget是一种树形的部件,它以树的形式显示各个项,它的每个项使用QTreeWidgetItem来表示。QTreeWidgetItem的值的表示都是用QStringList来表示的。简单的说明一下:

 

代码:

#include <QApplication>  
#include <QTreeWidget>  
#include <QTreeWidgetItem>  
#include <QStringList>  
int main(int argc, char** argv)  
{  
    QApplication app(argc, argv);  
    QTreeWidget* treeWidget = new QTreeWidget;  
    treeWidget->setWindowTitle("QTreeWidget");  
    //设定头项名称  
    treeWidget->setHeaderLabels(QStringList()<<"Key"<<"Value");  
    //设定各个项  
    QTreeWidgetItem* A = new QTreeWidgetItem(QStringList()<<"A");  
    A->setIcon(0, QIcon("images/data.png"));  
    A->setCheckState(0, Qt::Checked);  
    QTreeWidgetItem* B = new QTreeWidgetItem(QStringList()<<"B");  
    B->setIcon(0, QIcon("images/decision.png"));  
    B->setCheckState(0, Qt::Checked);  
    QTreeWidgetItem* C = new QTreeWidgetItem(QStringList()<<"C");  
    C->setIcon(0, QIcon("images/process.png"));  
    C->setCheckState(0, Qt::Checked);  
    treeWidget->addTopLevelItem(A);  
    treeWidget->addTopLevelItem(B);  
    treeWidget->addTopLevelItem(C);  
      
    for(int i=0; i<3; ++i)  
    {  
        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);  
    }  
    for(int i=0; i<3; ++i)  
    {  
        QStringList columItemList;  
        QTreeWidgetItem *child;  
        QString key, value;  
        key += "b" + QString::number(i);  
        value += QString::number(i);  
        columItemList<<key<<value;  
        child = new QTreeWidgetItem(columItemList);  
        B->addChild(child);  
    }  
    for(int i=0; i<3; ++i)  
    {  
        QStringList columItemList;  
        QTreeWidgetItem *child;  
        QString key, value;  
        key += "c" + QString::number(i);  
        value += QString::number(i);  
        columItemList<<key<<value;  
        child = new QTreeWidgetItem(columItemList);  
        C->addChild(child);  
    }  
    treeWidget->show();  
    return app.exec();  
      
}

 

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/fjb2080/archive/2009/12/02/4924395.aspx#

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
QTreeView 和 QTreeWidget 都是 Qt 中用于显示树形结构的控件,它们的使用方式有些不同。 QTreeWidget 是一个基于 QWidget 的控件,可以直接在 Qt Designer 中使用。它使用树形结构来展示数据,每个项都是一个 QTreeWidgetItem 对象。可以通过设置 QTreeWidgetItem 的父子关系来构建树形结构,并可以为每个项设置图标、文本等属性。 以下是一个简单QTreeWidget 示例代码: ```python from PyQt5.QtWidgets import QApplication, QWidget, QTreeWidget, QTreeWidgetItem app = QApplication([]) window = QWidget() tree = QTreeWidget() tree.setColumnCount(2) # 设置列数 # 添加根节点 root = QTreeWidgetItem(tree) root.setText(0, 'Root') root.setText(1, 'Description') # 添加子节点 child1 = QTreeWidgetItem(root) child1.setText(0, 'Child1') child1.setText(1, 'Description of Child1') child2 = QTreeWidgetItem(root) child2.setText(0, 'Child2') child2.setText(1, 'Description of Child2') tree.addTopLevelItem(root) # 添加根节点到树中 window.setLayout(tree) window.show() app.exec_() ``` QTreeView 是一个基于 QAbstractItemView 的控件,它使用 model-view 架构来展示数据。可以使用 QStandardItemModel 来创建数据模型,并使用 QTreeView 来展示数据。 以下是一个简单的 QTreeView 示例代码: ```python from PyQt5.QtWidgets import QApplication, QWidget, QTreeView, QFileSystemModel app = QApplication([]) window = QWidget() tree = QTreeView() model = QFileSystemModel() model.setRootPath('C:\\') # 设置根目录 tree.setModel(model) window.setLayout(tree) window.show() app.exec_() ``` 以上是 QTreeWidget 和 QTreeView 的简单使用示例,希望能对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值