大家好,又见面了,我是你们的朋友全栈君。
QTreeView
结构介绍:
树控件的标题 QHeaderView,相关用法参考Qt文档。
控件使用的model/view框架,QTreeView实现了QAbstractItemView 里声明的相关接口,由QAbstractItemModel为控件提供显示数据。
自定义数据
1、继承自QAbstractItemModel,实现相关的模型。
2、通过QStandardItemModel和QTreeView连用,用QStandardItem存储每个数据单元。
常用属性:
1、autoExpandDelay:int
执行drag/drop操作时,控制树控件自动展开的延时时间。
默认的设置为-1,此时意味着响应拖拽功能时,自动展开无效。
2、heardHidden:bool
表头是否显示。
3、indentation:int
树控件中每一项的缩进,默认为20。
4、itemsExpandable:bool
树控件是否能展开或收缩。
5、rootIsDecorated:bool
树控件的顶层项用以表示展开和收缩的小控件是否显示。如果只有一个层级的树结构,可以设置该属性为false,让
他看起来更像简单的list结构。
6、sortingEnabled:bool
是否可以排序。默认为false;
当执行排序前,必须保证items全部插入到tree中。这样可以避免错误。
7、uniformRowHeights:bool
每一项是否有相同的高度。默认为false。这个高度通过第一个Item获得,只有当该item的数据改变,才会去更新。
当有大量数据时,可以将该属性设为true,以保证控件更快的效率。
8、wordWrap:bool
每一项文字在遇到换行符时候是否换行。默认为false。
注意:即使设置该属性为true,也不能保证文字在过长的时候被完全显示,都会出现省略号。
常用接口:
1、折叠操作(collapse)
2、展开操作(expand)
3、根据像素坐标X,定位列。
4、重新绘制操作(draw)
5、排序(sort)
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/137402.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...