QTreeView不得不说是让人又爱又恨,树形菜单是工程应用很实用重量级的菜单,是分级展示工程实体位置、造价十分有用的控件。可惜能学习的的资料并不完整,需要不断的阅读QT手册与C++相关代码,而且对于英语不太好的人来说,简直是折磨。通过断断续续,艰苦的探索,将近期取得经验在这里做一个记录:
1、QTreeView相比QTreeWidget要更灵活,是基于Mode数据分离的一个框架,适合自已定义自己的数据组进行显示。
2、基本使用方法:
tree=QTreeView(window):定义tree并放入到Window
model=QStandardItemModel(tree):定义model并放入在tree
items=QStandardItem(‘your_item_text’):定义items元素
model.appendRow(items):将元素放入到model
tree.setModel(model):将model放入到tree里面
tree.show():将tree显示出来
3、tree的几个属性与操作:

4、model的几个属性与操作:

以上内容可以完成大部分Tree的常规操作:Tree的显示,增删查改基本顺序操作,以及model的增删查改的顺序操作。
但接下来仍需要研究解决的高阶应用:
(1)实现Tree拖放操作的应用;
(2)实现Tree分级非顺序:增删查改的应用;–>也即是Tree树内的“数据随时互通”
加油吧!胜利就在眼前。