2012-01-18 39 views
2
で編集可能QFileSystemModel

私は、ファイルシステム上でこれを持っている:PyQtは:QTreeView

- myFolder 
     - mySubFolder 
  1. ツリービューの中で、私は、フォルダに"MYFOLDER"を展開します。
  2. 次に、「myFolder_2」という名前に変更します。
  3. 最後に、「mySubFolder」「mySubFolder_2」と改名しようとしました。 QFileSystemWatcher:

「mySubFolder_2」以上のフォルダとして考えていないさでが、-1バイトのサイズと同様に、未知と私がメッセージを持ってパスを追加できませんでした: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_() 

すべてのヘルプは大歓迎だろう。

答えて

0

あなたは、ツリービューでそれを設定する前に、モデル上のルートのパスを設定する必要があります。

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_() 
+0

は、あなたの迅速な返信いただきありがとうございますが、問題はまだ同じです。 –

+0

@JeanDalmayrac。 Linux上でうまく動作します。 Windowsの問題でなければなりません - Qtのバグでしょうか? – ekhumoro

+0

私はPython 2.6とPyQt4.5.2でWindowsとUnixで同じ問題を抱えています。 –