PyQt/QTreeWidget/README.md
2019-11-08 13:07:18 +08:00

29 lines
No EOL
927 B
Markdown

# QTreeWidget
- 目录
- [通过json数据生成树形结构](#1通过json数据生成树形结构)
- [点击父节点全选/取消全选子节点](#2点击父节点全选取消全选子节点)
- [禁止父节点/禁止父节点](#3禁止父节点)
## 1、通过json数据生成树形结构
[运行 ParsingJson.py](ParsingJson.py)
解析每一层json数据中的list
![ParsingJson](ScreenShot/ParsingJson.png)
## 2、点击父节点全选/取消全选子节点
[运行 testTreeWidget.py](testTreeWidget.py)
点击父节点全选/取消全选子节点
![testTreeWidget](ScreenShot/allSelectNode.png)
## 3、禁止父节点
[运行 ParentNodeForbid.py](ParentNodeForbid.py)
1. 父节点通过设置`pitem1.setFlags(pitem1.flags() & ~Qt.ItemIsSelectable)`为不可选
2. 完全禁用点击等需要重写`mousePressEvent`事件并结合item的标志来判断
![ParentNodeForbid](ScreenShot/ParentNodeForbid.gif)