如何找到用循环创建的 QButton?

How to find QButton created with a loop?

在 Maya 中创建一个按钮:

   cmds.button('buttonname', label='click me')

其中按钮名称是 按钮对象。在稍后阶段,我可以简单地通过调用来编辑按钮:

   cmds.button('buttonname', e=1, label='click me again')

现在的问题: 我使用循环在 qt 中创建了一堆按钮:

  for s in Collection:
        file = os.path.splitext(s)[0]

        # Main widget
        widgetItem = QtWidgets.QWidget()
        layoutItem = QtWidgets.QVBoxLayout()
        widgetItem.setLayout(layoutItem)

        # Button
        button = QtGui.QPushButton()
        button.setObjectName(file)
        layoutItem.addWidget(button)

我如何 call/edit 其中之一使用按钮名称?

提前致谢

假设您已经可以访问他们的父窗口小部件,您可以通过 findChild 方法找到他们。

在 C++ 语法中,它应该是这样的:

QPushButton *button = parentWidget->findChild<QPushButton *>("button1");

其中 button1 是该按钮的名称。