QTreeWidget:禁用一行但不禁用子树

时间:2010-10-18 09:44:08

标签: qt qtreewidget qtreewidgetitem

我使用QTreeWidget显示文件列表,以便用户可以将文件复制到目录。 我想禁止用户将文件复制到同一目录。 因此,我想在我的QTreeWidget中只禁用一行,以便它不可选。我试图使用QTreeWidgetItem对象的setDisable(bool)方法,但问题是它会禁用整个子树。

如何在QTreeWidget中禁用一行?

2 个答案:

答案 0 :(得分:2)

我会尝试用QTreeWidgetItem :: setFlags禁用Qt :: ItemIsDropEnabled标志, ie.e. setFlags(Qt :: ItemIsSelectable | Qt :: ItemIsUserCheckable | Qt :: ItemIsEnabled)

我没有测试过这个。

答案 1 :(得分:-3)

如果您想禁止将文件复制到目录中,请将目录设为只读。

chmod(dir,0555)将执行目录 - dir readonly,你可以在

中使用chmod()

- 干杯