小编Her*_*sky的帖子

禁用QTreeWidgetItem的列或删除set CheckBox

我已经QTreeWidgetItem设置了QTreeWidget2列.两个单元都有一个CheckBox设置setCheckState(...).

当用户在我的第一列中取消选中CheckBox时,我取消选中第2列中的第二个CheckBox.

现在,我想阻止用户再次检查第二个CheckBox.是否可以在第2列中删除此CheckBox或仅禁用此单元格?到目前为止,我刚刚看到所有标志都在整个项目上工作,并且一组CheckBox不会消失.

顺便说一句.这些项目不可编辑,我不想使用QTableWidget/ -Item.

更新:

当我为项目调用setCheckState时,Qt将自动插入CheckBox:

QTreeWidgetItem *item = new QTreeWidgetItem(ui.TreeWidget);
item->setCheckState(0, Qt::Checked);
Run Code Online (Sandbox Code Playgroud)

在之后new的项目并不拥有一个复选框(由Qt的默认值).调用setCheckState(...)我自动插入一个CheckBox(在第0列)和Qt::CheckState我想要的.

但是在我完成之后,就没有办法删除CheckBox - 所以看起来如此.

也许有人有一个解决方案,我怎么能在以后摆脱这个CheckBox?任何帮助深表感谢!

c++ qt qtreewidgetitem

2
推荐指数
1
解决办法
3224
查看次数

标签 统计

c++ ×1

qt ×1

qtreewidgetitem ×1