我想建立一個上下文菜單,用戶可以右鍵單擊QTreeWidget並選擇所有項目。如何選擇或突出顯示QTreeWidget中的所有項目?
1
A
回答
0
下面是遞歸遍歷每個項目及其子項並全部選擇它們的一種方法。它利用每個QTreeWidget
的根的invisibleRootItem
。您也可以將樹中的任何項目傳遞給此函數,並選擇該項目及其所有子項。
def select_item(item)
item.setSelected(True)
for i in range(item.childCount()):
child = item.child(i)
select_item(child)
item = tree.invisibleRootItem()
select_item(item)
1
您可以使用QTreeView.selectAll()
,但只有選擇模式設定的東西,允許多個選擇後(使用QAbstractItemView.setSelectionMode()
)。
實施例(PyQt4中使用QtGui代替QtWidgets):
from PyQt5 import QtWidgets
app = QtWidgets.QApplication([])
widget = QtWidgets.QTreeWidget()
widget.addTopLevelItems([QtWidgets.QTreeWidgetItem(['dog']), QtWidgets.QTreeWidgetItem(['car'])])
widget.setSelectionMode(QtWidgets.QAbstractItemView.ContiguousSelection)
widget.selectAll()
widget.show()
app.exec_()
,它看起來像:
相關問題
- 1. ListView,突出顯示所選項目
- 2. jquery treeview突出顯示所選項目
- 3. 導航抽屜如何突出顯示所選項目
- 4. 突出顯示並在jquery中選擇的未加亮項目
- 5. 如何突出顯示ListView中的選定項目?
- 6. 如何突出顯示Recycler視圖中的選定項目
- 7. 如何突出顯示RadMenu中的選定項目?
- 8. 如何突出顯示畫廊中當前選定的項目?
- 9. 如何突出顯示RecyclerView中的選定項目
- 10. 如何突出顯示所選按鈕?
- 11. 迭代選擇列表以突出顯示項目,依次突出顯示每個項目
- 12. WPF如何突出顯示並選擇代碼中的項目comobox
- 13. 如何突出顯示ListView項目
- 14. 突出顯示ListView選擇
- 15. UITabBar的項目在選中時沒有突出顯示
- 16. WPF突出顯示項目
- 17. 突出顯示UITableView沒有選擇
- 18. 突出顯示Python中的選擇框
- 19. 使用javascript突出顯示所選列表項目
- 20. Windows Phone 7:突出顯示所選列表框項目
- 21. 以編程方式突出顯示/選擇「dl」項目
- 22. UITableView項目被突出顯示,然後取消選擇 - Swift
- 23. Angular2/Nativescript:如何突出顯示ListView的選定項目?
- 24. 如何使用jquery突出顯示選定的列表項目?
- 25. 使用ActionBarSherlock中的選擇器突出顯示選定的列表項目
- 26. 所有用「i」字符突出顯示的xcode項目文件
- 27. JList沒有顯示項目或選擇性地顯示
- 28. 突出顯示TreeView中的父項目
- 29. RecyclerView中突出顯示的大項目
- 30. 如何選擇所有的listview項目?