在QTreeWidget中仅禁用一个项目

时间:2015-06-17 13:39:32

标签: c++ qt qtreewidget

我有一个QTreeWidget,可以有很多行但只有3列:

enter image description here

在图片中我选择了我的最后一栏。我想做的是禁用树中每个项目的最后一列,除非它被选中。所以在我的情况下,只有pidtest.xml项才会启用复选框。我不知道如何使用现有方法执行此操作。我会帮助你!

1 个答案:

答案 0 :(得分:2)

这里有一个完整的工作示例,说明如何做到这一点。

正如Pavel Strakhov指出的那样,该示例使用QTreeView,因为QTreeWidgetItem不支持"部分禁用"。

在示例中,将显示TreeView,显示2列(名称,已启用)。只有当第二列为真时,您才能编辑第一列。

  

示例中没有用于更改值的实现,您必须将sed -i '/myPattern/a \ LineIWantToinser ' myFile 函数添加到模型中才能执行此操作。

完整示例:

setData