QTreeView でディレクトリ選択

  • 1
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

Windows で C や D などのドライブから表示したいときは QFileSystemModel.setRootPath() に空の文字列を渡せばおk。

import sys
from PySide import QtCore, QtGui

def main():
    app = QtGui.QApplication(sys.argv)


    rootpath = ''
    currentpath = QtCore.QDir.currentPath()

    model = QtGui.QFileSystemModel()
    model.setFilter(QtCore.QDir.NoDotAndDotDot | QtCore.QDir.AllDirs)
    model.setRootPath(rootpath)

    tree = QtGui.QTreeView()
    tree.setRootIndex(model.index(rootpath))
    tree.header().setResizeMode(QtGui.QHeaderView.ResizeToContents)
    tree.setModel(model)
    tree.setCurrentIndex(model.index(currentpath))
    tree.show()

    sys.exit(app.exec_())

if __name__ == '__main__':
    main()