我将 .ui 文件连接到 .py 脚本
class MainWindow(QMainWindow):
def __init__(self, *args):
super(MainWindow, self).__init__(*args)
loadUi('ui.ui', self)
现在我可以访问QTreeWidget,名为treeWidget1:
self.treeWidget1
如何分别输出文件名和扩展名到多列?
我找到了一些例子,但这里仅输出到第一列:
for i in self.filesList1:
if i.lower().endswith(tuple(ext_pattern)) and os.path.isfile(os.path.join(self.folder1, i)):
row = os.path.splitext(i)
self.treeWidget1.insertTopLevelItems(0, [QTreeWidgetItem(self.treeWidget1, ["%s" % i])])
要为每行添加多列,请使用:
self.treeWidget1.insertTopLevelItems(0, [QTreeWidgetItem(self.treeWidget1, ["col1", "col2", "col3"])
将
"col1"
等替换为从您的文件名派生的适当字符串。
注意:使用
insertTopLevelItems(0, ...)
会将每个项目按顺序插入到树的顶部。您可能需要考虑使用:
self.treeWidget1.addTopLevelItem([QTreeWidgetItem(self.treeWidget1, ["col1", "col2", "col3"])])
而是保留
self.filesList1
的顺序。