qt重写QTreeWidget树控件,让ui设计界面的treewidget控件进行提升
一、在设计界面托入treewidget控件
二、新建c++头文件(包括cpp文件)
三、编写头文件
1. 将 #include <QWidget> 改为 #include <QTreeWidget>
2.将 继承的基类 改为 QTreeWidget
#pragma once #include <QtWidgets/QTreeWidget> #include <QtWidgets/QTreeWidgetItem> class TreeWidgetParent : public QTreeWidget { //Q_OBJECT public: TreeWidgetParent(QWidget *_parent = nullptr); ~TreeWidgetParent(); public: void testFunction(); QTreeWidgetItem* item1; QTreeWidgetItem* item2; QTreeWidgetItem* item3; QTreeWidgetItem* item4; };
四、编写cpp文件实现一些显示功能
#include "TreeWidgetParent.h" #include <QtWidgets/QTreeWidgetItem> #include <QString> TreeWidgetParent::TreeWidgetParent(QWidget *_parent) : QTreeWidget(_parent) { item1 = new QTreeWidgetItem(this); item1->setText(0, QString::fromLocal8Bit("第一个")); item2 = new QTreeWidgetItem(item1); item2->setText(0, QString::fromLocal8Bit("第二个")); item3 = new QTreeWidgetItem(this); item3->setText(0, QString::fromLocal8Bit("第三个")); item4 = new QTreeWidgetItem(item3); item4->setText(0, QString::fromLocal8Bit("第四个")); } TreeWidgetParent::~TreeWidgetParent() { } void TreeWidgetParent::testFunction() { }
五、在主程序中,调用这个被提升了的treewidget控件,设置显示标题
#include "MyTteeWidget.h" MyTteeWidget::MyTteeWidget(QWidget *parent) : QMainWindow(parent) { ui.setupUi(this); ui.mytree->setHeaderLabel(QString::fromLocal8Bit("模块管理")); }
最终显示效果: