QTreeWidgetItem中的格式化文本

时间:2012-07-06 08:35:31

标签: qt qtreewidgetitem formatted

我需要创建支持格式化文本的QTreeWidgetItems,例如:

MyCreatedType - INTEGER(1)

(即:上面的行应该有一个“正常”部分:MyCreatedType和“格式化”部分(在我们的例子中是 INTEGER(1) )。

知道怎么做到这一点吗?

感谢。

1 个答案:

答案 0 :(得分:0)

您需要的是代表。代表们在这里解释:

创建和使用自定义委托时遵循的一般步骤:

  1. 使用要封装的信息创建自定义类型。
    • 对于您的情况,可能是变量类型名称和类型值的字段。
  2. 将这些自定义类型存储在模型中,将它们包装在QVariants中以满足QAbstractItemModel所需的返回类型
  3. 创建一个与您想要的UI匹配的控件。
    • 在这种情况下,它可能意味着“MyCreatedType”的QText标签,后面跟着“Integer(1)”的第二个粗体标签。
    • 也许控件具有“setTypeName”和“setTypeValue”
    • 等方法
  4. 创建一个委托,在找到自定义类型时绘制您的特定控件。
    • 您必须根据需要将自定义类型中的字段映射到自定义UI控件中的字段。
  5. 将您的模型和委托与您正在使用的树视图相关联。
  6. 我希望这个一般程序有意义。我建议完成Star Delegate示例,然后阅读我的程序,因为在某些背景下会更有意义。