QTreeView使用总结--序

1,简介

在Qt开发过程中,我发现树控件即QTreeView使用的非常频繁。

各种批量展示和编辑信息的地方,都用得上该控件。

我的项目在使用QTreeView过程中,用到了各种常规、不常规的功能,并进行过各种改造。

这里将这些知识与技巧作一个总结,分享给大家。

2,《QTreeView使用总结》目录

该系列文章暂拟了下列内容:

1,QTreeView一个简单使用示例

2,常用API介绍

3,表头、行列相关的设置方法

4,Model/View框架介绍

5,选中信号处理

6,单击双击的信号与事件

7,右键菜单

8,风格美化,使用qss样式表

9,使用委托示例:定制item输入效果

10,使用委托示例:定制item显示效果

11,数据过滤,使用代理model,简单过滤

12,数据过滤,使用代理model,自定义过滤条件

13,自定义model示例,大大优化性能和内存

14,自定义model示例,控制对齐和颜色

15,自定义model示例,支持item可编辑

16,定时刷新后,当前选中行的处理

17,改造QTreeView,实现点击空白处取消选中

18,点击空白处取消选中,简单方法

19,添加、删除、清空功能示例

3,源码下载

链接:https://pan.baidu.com/s/1jYEb3SKgIwPnSIsbCiAweg?pwd=ib2l 
提取码:ib2l

若链接失效,也可在Qt学习群文件下载,群号见主页介绍。

QTreeViewQt框架中的一个控件,用于显示形结构的数据。QScrollBar是Qt框架中的一个控件,用于显示滚动条。 在给QTreeView添加QScrollBar时,可以通过判断QTreeView的垂直滚动条是否可见来确定是否需要进行补偿。如果垂直滚动条可见,可以使用rect.setRight(rect.right() - tree->verticalScrollBar()->width())来补偿宽度,使得绘制的内容不会被滚动条遮挡。 在自定义派生类MyTreeDelegate的paint函数中,可以通过获取QTreeView的垂直滚动条宽度,判断是否可见,并根据需要进行补偿操作。然后使用painter->drawText来绘制文本内容,实现显示rect.right的功能。最后调用QStyledItemDelegate::paint来完成绘制。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [QTreeView 一个竖直滚动条引起的问题](https://blog.csdn.net/luoshabugui/article/details/103393021)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [C++ QT5开发教程](https://download.csdn.net/download/prickly/9673714)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

逆枫゛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值