在qtreewidgetitem中data函数怎么用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在qtreewidgetitem中data函数怎么用相关的知识,希望对你有一定的参考价值。

参考技术A DateValue
  DateValue函数 返回

  返回一个 Variant (Date)。

  语法

  DateValue(date)

  必要的 date 参数 date 通常是字符串表达式,表示从 100 年 1 月 1 日到 9999 年 12 月 31 日之间的一个日期。但是,date 也可以是任何表达式,其所代表的日期、时间在上述范围内。本回答被提问者和网友采纳

QTreeWidgetItem 高亮文本问题

【中文标题】QTreeWidgetItem 高亮文本问题【英文标题】:QTreeWidgetItem highlight text problems 【发布时间】:2019-10-01 08:02:21 【问题描述】:

我尝试显示 QTreeWidgetItem 文本,其中一部分以蓝色突出显示。 正如我在其他帖子中看到的,我们可以使用 QLabel 并将其添加为 itemWidget。

QString("Test<SPAN style='background-color: lightblue'>blue</SPAN>display");    

我使用的文字是这样的。文本正确突出显示,但出现了很多问题。我无法选中/取消选中我的项目,也无法在其中的很大一部分上使用拖放操作。

有没有使用 ItemDelegate 或其他东西来解决这个问题的解决方案? 我正在使用 Qt 5.13

我需要你的帮助。提前谢谢你。

【问题讨论】:

您好,欢迎您。您说您正在使用QLabel 并将其用作QWidgetItemItemWidget?),但仅提供带有QString 的单行。请务必在您的问题中包含relevant code,否则我们将无法为您提供帮助。 提供minimal reproducible example auto *tree= new QTreeWidget; auto *item = new QTreeWidgetItem(tree); auto *label= new QLabel(QString("Testbluedisplay"));树->setItemWidget(0, 标签);当我这样做时,我无法再选中或取消选中我的项目。 【参考方案1】:
auto *tree= new QTreeWidget;
auto *item = new QTreeWidgetItem(tree);
auto *label= new QLabel(QString("Test<SPAN style='background-color: lightblue'>blue</SPAN>display"));
tree->setItemWidget(0, label);

当我这样做时,我无法再选中或取消选中我的项目。

【讨论】:

以上是关于在qtreewidgetitem中data函数怎么用的主要内容,如果未能解决你的问题,请参考以下文章

7.6.2 QTreeWidgetItem类相关函数介绍

如何使用 QStyledItemDelegate 在 QTreeWidget 中拥有不同高度的 QTreeWidgetItems?

尝试在 pyqt 中创建文件浏览器,但 qtreewidgetitem 出现意外 bool 错误

如何删除 QTreeWidgetItem 的子项

Qt继承QTreeWidgetItem的问题

使用光标在QTreeWidgetItem中选择Text