这是我必须显示名为“C:\ Myfolder”的目录的树视图的代码。
import sys
from PyQt4 import QtGui,QtCore
class Myview(QtGui.QMainWindow):
def __init__(self,parent=None):
QtGui.QMainWindow.__init__(self)
model = QtGui.QFileSystemModel()
model.setRootPath('C:\Myfolder')
view = QtGui.QTreeView()
view.setModel(model)
self.setCentralWidget(view)
if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
myview = Myview()
myview.show()
sys.exit(app.exec_())
即使我将RootPath
设置为“C:\ Myfolder”,树状视图也会显示所有驱动器和文件夹。
如何限制QFileSystemModel
以便TreeView
仅显示“C:\ Myfolder”目录中的项目?
答案 0 :(得分:10)
您需要根据QFileSystemModel documentation添加view.setRootIndex(model.index("C:\Myfolder"))
。