PyQt4,如何一次添加一批小部件(QPushButton)并让它们在SLOT上执行

7 python signals pyqt sender

如果我想一次添加10个QPushButton:

NumCount=20
for i in range(NumCount):
  btn=QPushButton("%s %s" %("Button" i+1),self)
  btn.clicked.connect(self.btnclick)

def btnclick(self):
  # here is my question 
  # how to define which button clicked?
  # how to print btn.text?
Run Code Online (Sandbox Code Playgroud)

如def(btnclick)中所述.

gru*_*czy 3

当你在一个槽中时,你可以使用 sender() 方法(只需调用 self.sender() ),你将收到对发出信号的对象的引用。这是有关它的文档。