C++ 带有复选框的Qtreewidgetitem
当我设置qtreewidgetitem的检查状态时,复选框被正确添加,但我无法在我的qtreewidget中选中/取消选中它。我做错了什么C++ 带有复选框的Qtreewidgetitem,c++,qt,checkbox,qtreewidgetitem,C++,Qt,Checkbox,Qtreewidgetitem,当我设置qtreewidgetitem的检查状态时,复选框被正确添加,但我无法在我的qtreewidget中选中/取消选中它。我做错了什么 QTreeWidgetItem* item = new QTreeWidgetItem(parent); item->setFlags(item->flags() | Qt::ItemIsUserCheckable | Qt::ItemIsSelectable); item->setText(0, te
QTreeWidgetItem* item =
new QTreeWidgetItem(parent);
item->setFlags(item->flags() | Qt::ItemIsUserCheckable |
Qt::ItemIsSelectable);
item->setText(0, text);
item->setCheckState(1, Qt::Checked);
QTreeWidgetItem
的默认标志是这些Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled | Qt::ItemIsDragEnabled | Qt::ItemIsDrokEnabled
,您可能不需要在此处调用setFlags()
。如果这不能解决问题,我们可能需要查看更多的代码,比如如何将项目添加到QTreeWidget
?项目->设置检查状态(1,Qt::Checked);实际上应该是item->setCheckState(0,Qt::Checked);您应该发布MCVE:。很可能你会在创建问题时自己解决问题。@SilvanoCerza,ítem构造函数中使用的父变量是QTreeWidget。QTreeWidgetItem
的默认标志是这些Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled | Qt::ItemIsDragEnabled | Qt::ItemIsDragEnabled
,您可能不需要调用setFlags()
这里。如果这不能解决问题,我们可能需要查看更多代码,例如如何将项目添加到QTreeWidget
?项目->设置检查状态(1,Qt::Checked);实际上应该是item->setCheckState(0,Qt::Checked);您应该发布MCVE:。很可能您会在创建问题时自己解决问题。@SilvanoCerza,在ítem构造函数中使用的父变量是QTreeWidget。