来自数据

时间:2015-11-20 10:38:00

标签: python qt pyqt

我想从变量中的数据(不是驱动器上的物理)创建文件目录树。 我有这样的数据:
data = ['folder1/file1', 'file2', 'file3', 'folder2/'file4']
我想把它显示为目录树。

  • folder1中
    • 文件1
  • 文件夹2
    • file4将
  • file2的
  • file3的

我刚刚发现了如何为现有文件夹执行此操作。 它不一定是Python代码,我想我将能够从任何其他语言中读取我需要的内容 我应该使用哪个类以及如何将数据传递给它?

的问候,
马立克

1 个答案:

答案 0 :(得分:4)

这应该让你开始:

import sys
from PySide.QtCore import *
from PySide.QtGui import *

app = QApplication(sys.argv)

data = ['folder1/file1', 'file2', 'file3', 'folder2/file4']

treeWidget = QTreeWidget()
treeWidget.setColumnCount(1)
treeWidget.setMinimumSize(600, 400)

items = []

for item in data:
    itemparts = item.split('/')

    entry = QTreeWidgetItem(None, [itemparts[0]])
    partentitem = entry

    if len(itemparts) > 1:
        for i in itemparts[1:]:
            childitem = QTreeWidgetItem(None, [i])
            partentitem.addChild(childitem)
            partentitem = childitem

    items.append(entry)

treeWidget.insertTopLevelItems(0, items)

treeWidget.show()
app.exec_()