Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python PyQt QTreeView,一旦文件夹展开,我就无法删除该文件夹_Python_Qt_Pyqt - Fatal编程技术网

Python PyQt QTreeView,一旦文件夹展开,我就无法删除该文件夹

Python PyQt QTreeView,一旦文件夹展开,我就无法删除该文件夹,python,qt,pyqt,Python,Qt,Pyqt,我正在实现一个工作区,通过使用QTreeView显示工作区文件夹中的文件。工作空间本身是一个由QTreeView、QFileSystemModel和QMenu构建的对象(一旦用户右键单击,将显示一个菜单来执行复制粘贴等操作) 我有几个QWidget,它们位于选项卡中,每个选项卡还包含一个工作区obj(它们不是一个单独的对象,工作区obj被创建多次,每个选项卡包含一个) 我实现了复制粘贴、删除等功能。除了一种情况外,其他一切都正常: 一旦文件夹展开并显示其内容,即使我将其折叠也无法删除。我必须重新

我正在实现一个工作区,通过使用QTreeView显示工作区文件夹中的文件。工作空间本身是一个由QTreeView、QFileSystemModel和QMenu构建的对象(一旦用户右键单击,将显示一个菜单来执行复制粘贴等操作)

我有几个QWidget,它们位于选项卡中,每个选项卡还包含一个工作区obj(它们不是一个单独的对象,工作区obj被创建多次,每个选项卡包含一个)

我实现了复制粘贴、删除等功能。除了一种情况外,其他一切都正常: 一旦文件夹展开并显示其内容,即使我将其折叠也无法删除。我必须重新启动程序,删除文件夹而不浏览它。 如果我试图删除该文件夹时,该文件夹曾被浏览过。它不断显示拒绝访问的信息。我试图使用os.chmod更改权限。但是,它不允许我这样做,并且显示访问被拒绝。此外,不仅删除它,我不能复制它等等

我认为原因可能是我创建了多个workspace对象,它们彼此冲突,当我删除文件夹时,obj无法访问,因为其他对象正在显示文件夹。然而,即使是我也只构建了一个工作区obj,并用选项卡添加到布局中。它仍然显示相同的行为:一旦文件夹展开,我就失去了权限。但是,如果文件夹从未展开过。我可以成功删除它


有人能帮我吗?谢谢大家!

你能发布你的代码吗?你能发布你的代码吗?