Python PyQt5-QtreeWidget:如何访问自定义小部件';QtreeWidgetItem中的s方法?

Python PyQt5-QtreeWidget:如何访问自定义小部件';QtreeWidgetItem中的s方法?,python,pyqt5,qtreewidgetitem,Python,Pyqt5,Qtreewidgetitem,我有一个简单的QTreeWidget: self.treeWidget = QTreeWidget(self) col = ("Status", "Name") self.treeWidget.setColumnCount(2) self.treeWidget.setHeaderLabels(col) 我使用以下方法填充: wid = Custom_Widget() item = QTreeWidgetItem(self.treeWidget) item.setText(1, "some st

我有一个简单的QTreeWidget:

self.treeWidget = QTreeWidget(self)
col = ("Status", "Name")
self.treeWidget.setColumnCount(2)
self.treeWidget.setHeaderLabels(col)
我使用以下方法填充:

wid = Custom_Widget()
item = QTreeWidgetItem(self.treeWidget)
item.setText(1, "some string")
item.treeWidget().setItemWidget(item, 0, wid)
我可以通过以下方式轻松访问文本列:

root = self.treeWidget.invisibleRootItem()
it = root.child(2) # for example the third item
it.setText(1, "Edited")

我需要的是编辑列0中的costum_小部件,那么我如何访问它或调用他的方法呢?

我通过保留我创建的所有costum_小部件的列表来解决这个问题,我的代码是:

from CustomWidgets import Custom_Widget
from PyQt5.QtWidgets import *
import sys


class MyExample(QWidget):

    def __init__(self):
        super().__init__()

        self.treeWidget = QTreeWidget(self)
        self.group_wid = []  # my list of widgets
        col = ("Status", "Name")
        self.treeWidget.setColumnCount(2)
        self.treeWidget.setHeaderLabels(col)

        self.populate_tree()
        self.edit_tree()
        self.show()

    def populate_tree(self):
        for i in range(10):
            wid = Custom_Widget()
            self.group_wid.append(wid)  # each time i instantiate a Custom_Widget i'll add it to my list of widgets
            item = QTreeWidgetItem(self.treeWidget)
            item.setText(1, "some string")
            item.treeWidget().setItemWidget(item, 0, wid)

    def edit_tree(self):
        root = self.treeWidget.invisibleRootItem()
        it = root.child(2)  # for example the third item
        it.setText(1, "Edited")
        self.group_wid[2].my_method()  # i can easily edit my widgets that are in the QTreeWidget


if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = MyExample()
    app.exec_()
猜测QtreeWidgetItem仅包含对所包含小部件的引用