PyQt: редактируемая QFileSystemModel в QTreeView - PullRequest
2 голосов
/ 18 января 2012

У меня есть это в моей файловой системе:

 - myFolder
      - mySubFolder
  1. В TreeView я раскрываю папку "myFolder" .
  2. Затем япереименуйте его в "myFolder_2" .
  3. И наконец я пытаюсь переименовать папку "mySubFolder" в "mySubFolder_2" .

"mySubFolder_2" in больше не рассматривается как папка, но является неизвестным с размером -1 байт, и я получил сообщение: QFileSystemWatcher: не удалось добавить пути: myFolder .

Вот мой исходный код:

from PyQt4 import QtGui
import sys

app = QtGui.QApplication(sys.argv)
treeView = QtGui.QTreeView()
fileSystemModel = QtGui.QFileSystemModel(treeView)
fileSystemModel.setReadOnly(False)
treeView.setModel(fileSystemModel)
folder = "."
treeView.setRootIndex(fileSystemModel.setRootPath(folder))
treeView.show()
end = app.exec_()

Любая помощь будет приветствоваться.

1 Ответ

0 голосов
/ 18 января 2012

Вам необходимо установить корневой путь на модели перед установкой его в древовидном представлении:

import sys
from PyQt4 import QtGui

app = QtGui.QApplication(sys.argv)
treeView = QtGui.QTreeView()
fileSystemModel = QtGui.QFileSystemModel(treeView)
fileSystemModel.setReadOnly(False)
root = fileSystemModel.setRootPath('.')
treeView.setModel(fileSystemModel)
treeView.setRootIndex(root)
treeView.show()
app.exec_()
...