Qt中的两个树控件,Qtreewidget跟QTreeView。怎么设置某个节点的缩进变小或者变大?两个标准类方法setIndentation都是一次性设置所有项所有节点的缩进。我尝试过自定义类来实现,好像没啥用。有实现过这个功能的吗?
2条回答 默认 最新
关注 引用 皆我百晓生 小程序回复内容作答:
在Qt中,如果要设置树控件中特定节点的缩进变小或变大,可以使用QTreeWidgetItem的方法setFirstColumnSpanned()来实现。首先,我们需要获取到要进行缩进设置的节点。可以使用QTreeWidget的方法selectedItems()来获取当前选中的节点。
然后,调用QTreeWidgetItem的setFirstColumnSpanned()方法来设置节点的缩进。setFirstColumnSpanned()方法有两个参数,第一个参数是列索引(通常为0,即第一列),第二个参数是一个布尔值,用来指定是否将该节点的缩进设置为0或者取消设置。
以下是一个示例代码:
// 获取当前选中的节点 QList<QTreeWidgetItem*> selectedItems = treeWidget->selectedItems(); if (!selectedItems.isEmpty()) { QTreeWidgetItem* item = selectedItems.first(); // 设置节点的缩进,将缩进设置为0 item->setFirstColumnSpanned(0, false); }
需要注意的是,QTreeView也提供了类似的方法,可以使用selectionModel()和selectedIndexes()来获取选中的节点。
希望对你有帮助!
解决 无用评论 打赏 举报
悬赏问题
- ¥15 微信会员卡接入微信支付商户号收款
- ¥15 如何获取烟草零售终端数据
- ¥15 数学建模招标中位数问题
- ¥15 phython路径名过长报错 不知道什么问题
- ¥15 深度学习中模型转换该怎么实现
- ¥15 HLs设计手写数字识别程序编译通不过
- ¥15 Stata外部命令安装问题求帮助!
- ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
- ¥15 TYPCE母转母,插入认方向
- ¥15 如何用python向钉钉机器人发送可以放大的图片?