如何在QTreeWidget中选择子索引

问题描述 投票:0回答:1

如何获得这种子级结构中所选子项的索引?通过选择名称为“子A”的项目,获取其索引。

if __name__ == '__main__':
    app = 0
    if QApplication.instance():
        app = QApplication.instance()
    else:
        app = QApplication(sys.argv)

    l1 = QTreeWidgetItem(["String A"])
    l2 = QTreeWidgetItem(["String AA"])
    l1_child = QTreeWidgetItem(["Child A"])
    l1.addChild(l1_child)
    l2_child = QTreeWidgetItem(["Child AA"])
    l2.addChild(l2_child)

    w = QWidget()
    w.resize(510, 210)

    tw = QTreeWidget(w)
    tw.resize(500, 200)
    tw.setColumnCount(1)
    tw.setHeaderHidden(True)
    tw.addTopLevelItem(l1)
    tw.addTopLevelItem(l2)
    w.show()
    sys.exit(app.exec_())here
python-3.x pyqt5 qtreewidget
1个回答
0
投票

您的问题似乎令人困惑,但我将按字面分析。

[选择的子项与另一个子项之间没有区别,如果要获取选择的项,则可以使用以下选项:

# ...
w.show()

def on_itemSelectionChanged():
    items = tw.selectedItems()
    for it in items:
        print(it.text(0))

tw.itemSelectionChanged.connect(on_itemSelectionChanged)

sys.exit(app.exec_())
# ...
w.show()

def on_selectionChanged():
    indexes = tw.selectedIndexes()
    for index in indexes:
        print(index.data())

tw.selectionModel().selectionChanged.connect(on_selectionChanged)

sys.exit(app.exec_())
© www.soinside.com 2019 - 2024. All rights reserved.