樹型部件QTreeWidget中的QTreeWidgetItem項:
-
獲取子項索引
可通過indexOfChild(QTreeWidgetItem child)方法返回項下子項child的位置索引,索引值從0計數,如果child對應項未在當前項的子項中,則返回-1 -
removeChild刪除子項
removeChild是根據子項對象從項中刪除子項,調用方法爲removeChild(QTreeWidgetItem child),操作是從項中刪除child對應子項,注意該方法無返回,如果對應子項不存在也不報錯。
注意:經老猿驗證,PyQt沒有精準驗證child是否爲當前項的子項,在部分驗證情況下發現child不是當前項的子項也會被刪除,以下爲老猿的驗證情況:
- child與當前項是兄弟節點
- child爲當前項的父項(包括父項的父項…)
- child爲當前項的父項的兄弟節點
- 如果child爲當前項兄弟節點的子項則不會被刪除。
- takeChild刪除並返回子項
removeChild是根據子項對象從項中刪除子項,但無返回,takeChild是根據子項的位置索引來刪除子項,同時將刪除的子項返回。調用方法爲:
QTreeWidgetItem takeChild(int index)
如果執行失敗,返回None。
- takeChildren刪除所有子項
takeChildren()是將當前項的所有子項都刪除,並將所有子項存儲到一個列表中返回,如果當前項沒有子項,則返回空列表。