在QTreeWidget類實例的樹型部件中,可以根據文本、搜索列以及匹配模式來搜索滿足條件的項,調用語法:
list[QTreeWidgetItem] findItems( str text, Qt.MatchFlags flags, int column = 0)
返回值為所有滿足條件的項構成的列表,如果沒有找到匹配項,返回空列表。
Qt.MatchFlags的取值及含義請參考《PyQt(Python+Qt)學習隨筆:Model/View中的枚舉類 Qt.MatchFlag的取值及含義》。
示例代碼:
對如下樹型部件搜索類型為NTFS的項:
findItems = self.treeWidget.findItems('NTFS1',QtCore.Qt.MatchContains,1)
print(type(findItems),findItems)
for item in findItems:print(item.text(0),':',item.text(1))
輸出結果:
<PyQt5.QtWidgets.QTreeWidgetItem object at 0x00000000031E2F78> <PyQt5.QtCore.QModelIndex object at 0x00000000034F7048> 0
<class 'list'> [<PyQt5.QtWidgets.QTreeWidgetItem object at 0x00000000031E2C18>, <PyQt5.QtWidgets.QTreeWidgetItem object at 0x00000000031E2EE8>, <PyQt5.QtWidgets.QTreeWidgetItem object at 0x00000000034F5318>]
c:\ : NTFS
d:\ : NTFS
e:\ : NTFS