【QT】QTreeWidget

新建项目

第一步:设置头标签

第二步:设置item

第三步:创建子item,挂载在顶层item下

完整代码

cpp 复制代码
#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    // 第一步:设置头标签,匿名对象
    ui->treeWidget->setHeaderLabels(QStringList() << "英雄" << "英雄介绍");

    // 第二步:设置item
    QTreeWidgetItem* power = new QTreeWidgetItem(QStringList() << "力量");
    // 添加顶层级别的item
    ui->treeWidget->addTopLevelItem(power);

    QTreeWidgetItem* agile = new QTreeWidgetItem(QStringList() << "敏捷");
    // 添加顶层级别的item
    ui->treeWidget->addTopLevelItem(agile);

    QTreeWidgetItem* intelligence = new QTreeWidgetItem(QStringList() << "智力");
    // 添加顶层级别的item
    ui->treeWidget->addTopLevelItem(intelligence);


    // 第三步:创建子item,挂载在顶层item
    QStringList hero1;
    hero1 << "吕布" << "吕布挥斩方天画戟的技能命中敌方英雄后会给武器附魔,持续8秒。";
    QTreeWidgetItem* l1 = new QTreeWidgetItem(hero1);
    power->addChild(l1);


    QStringList hero2;
    hero2 << "上官婉儿" << "每第三次普攻获得强化,对一条路径上的敌人额外造成300(+40%法术攻击)法术伤害。";
    QTreeWidgetItem* l2 = new QTreeWidgetItem(hero2);
    agile->addChild(l2);

    QStringList hero3;
    hero3 << "诸葛亮" << "技能命中敌方目标会叠加印记,达到5层会召唤5颗法球,自动攻击周围目标造成135(+25%法术攻击)法术伤害。";
    QTreeWidgetItem* l3 = new QTreeWidgetItem(hero3);
    intelligence->addChild(l3);

}

Widget::~Widget()
{
    delete ui;
}

效果

相关推荐
yuanManGan4 分钟前
C++入门小馆: 深入了解STLlist
开发语言·c++
北极的企鹅884 分钟前
XML内容解析成实体类
xml·java·开发语言
BillKu8 分钟前
Vue3后代组件多祖先通讯设计方案
开发语言·javascript·ecmascript
Python自动化办公社区10 分钟前
Python 3.14:探索新版本的魅力与革新
开发语言·python
逐光沧海17 分钟前
STL常用算法——C++
开发语言·c++
星火撩猿25 分钟前
ubantu中下载编译安装qt5.15.3
开发语言·qt
球求了1 小时前
C++:继承机制详解
开发语言·c++·学习
张槊哲1 小时前
函数的定义与使用(python)
开发语言·python
北辰浮光1 小时前
[Mybatis-plus]
java·开发语言·mybatis
光而不耀@lgy2 小时前
C++初登门槛
linux·开发语言·网络·c++·后端