QTreeWidget - 禁用顶级删除

时间:2015-05-29 19:47:36

标签: c++ qt

我有一个QTreeWidget,我启用了拖放功能。尽管我希望用户能够在树中拖放项目,但我不希望他们删除顶层的任何拖动项目。我怎么能这样做?

假设我有预定义的类别,它们是顶级项目,我不想扩展该列表。但是在较低级别,用户可以创建任意数量的项目,并且他/她也可以移动这些项目。

1 个答案:

答案 0 :(得分:2)

感谢您的帮助。它奏效了。

MyTreeWidget::MyTreeWidget( QWidget* aParent /*= nullptr*/ )
: QTreeWidget( aParent )
{
// ...
    auto rooItem = invisibleRootItem();
    rooItem->setFlags( rooItem->flags() ^ Qt::ItemIsDropEnabled );
}