• QTreeWidget的简单用法


      QTreeWidget的显示效果与MFC的TreeCtrl控件是类似的,QTreeWidget与QTReeView的本质区别是QTreeWidget面向QTreeWidgetItem,而QTReeView是面向model的。

      一个简单的小例子用来阐述QTreeWidget的简单使用。

    #include <QtGui/QApplication>
    #include <QtCore/QTextCodec>
    #include <QTreeWidget>
    #include <QWidget>
    #include <QHBoxLayout>
    
    int main(int argc, char *argv[])
    {
        QApplication a(argc, argv);
    
        QTextCodec::setCodecForTr(QTextCodec::codecForName("gb18030"));
        QTreeWidget *tree = new QTreeWidget;
        tree->setColumnCount(2);
        QStringList headers;
        headers << QObject::tr("科目") <<QObject::tr("分数");
        tree->setHeaderLabels(headers);
    
        QStringList zhangsan;
        zhangsan << QObject::tr("张三");
        QTreeWidgetItem *zhangsanroot = new QTreeWidgetItem(tree, zhangsan);
        QStringList zhangsanChinese;
        zhangsanChinese << QObject::tr("语文") << QObject::tr("80");
        QTreeWidgetItem *leaf1 = new QTreeWidgetItem(zhangsanroot, zhangsanChinese);
        zhangsanroot->addChild(leaf1);
        QStringList zhangsanMath;
        zhangsanMath << QObject::tr("数学") << QObject::tr("90");
        QTreeWidgetItem *leaf2 = new QTreeWidgetItem(zhangsanroot, zhangsanMath);
        zhangsanroot->addChild(leaf2);
    
        QStringList lisi;
        lisi << QObject::tr("李四");
        QTreeWidgetItem *lisiroot = new QTreeWidgetItem(tree, lisi);
        QStringList lisiChinese;
        lisiChinese << QObject::tr("语文") << QObject::tr("90");
        leaf1 = new QTreeWidgetItem(lisiroot, lisiChinese);
        lisiroot->addChild(leaf1);
        QStringList lisiMath;
        lisiMath << QObject::tr("数学") << QObject::tr("100");
        leaf2 = new QTreeWidgetItem(lisiroot, lisiMath);
        lisiroot->addChild(leaf2);
    
        tree->addTopLevelItem(zhangsanroot);
        tree->addTopLevelItem(lisiroot);
    
        QHBoxLayout *mainlayout = new QHBoxLayout;
        mainlayout->addWidget(tree);
        QWidget *widget = new QWidget;
        widget->setLayout(mainlayout);
        widget->setWindowTitle(QObject::tr("QTreeWidget Demo"));
        widget->show();
        return a.exec();
    }

      运行结果:

                                         

  • 相关阅读:
    反射
    EFCore笔记之异步查询
    EFCore笔记之查询数据
    Json扩展 (转)
    C语言学习笔记之成员数组和指针
    asp中cookie欺骗/注入原理与防范
    简单的php Mysql类(查询 删除 更新)
    PHP四舍五入精确小数位及取整
    CentOS中配置LNMP环境打开提示File not found
    WIN中SharePoint Server 2010 入门安装部署详解
  • 原文地址:https://www.cnblogs.com/venow/p/2726587.html
Copyright © 2020-2023  润新知