123无敌,就你了 2023-09-06 14:23 采纳率: 0%
浏览 9
已结题

Qt中的两个树控件,Qtreewidget跟QTreeView,怎么设置某个节点缩进?

Qt中的两个树控件,Qtreewidget跟QTreeView。怎么设置某个节点的缩进变小或者变大?两个标准类方法setIndentation都是一次性设置所有项所有节点的缩进。我尝试过自定义类来实现,好像没啥用。有实现过这个功能的吗?

  • 写回答

2条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2023-09-06 15:19
    关注

    引用 皆我百晓生 小程序回复内容作答:
    在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()来获取选中的节点。

    希望对你有帮助!

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 9月13日
  • 创建了问题 9月6日

悬赏问题

  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?