PyQT QTreeWidget 迭代
我有一个QTreeWidget,里面有两列。第一列是一个网址列表,第二列是结果。我已经把网址列表加载到第一列,现在我想遍历这个列表,并在遍历的过程中修改第二列的文本。请问我该怎么做呢?
1 个回答
16
你可以调用 QTreeWidget.invisibleRootItem() 来获取树的根节点,然后使用 QTreeWidgetItem 的相关功能来遍历里面的项目。
举个例子:
root = self.treeWidget.invisibleRootItem()
child_count = root.childCount()
for i in range(child_count):
item = root.child(i)
url = item.text(0) # text at first (0) column
item.setText(1, 'result from %s' % url) # update result column (1)
我假设 self.treeWidget
是通过以下方式填充的:
self.treeWidget.setColumnCount(2) # two columns, url result
for i in range(10):
self.treeWidget.insertTopLevelItem(i, QTreeWidgetItem(QStringList('url %s' % i)))