梦云天 2019-07-20 19:30 采纳率: 66.7%
浏览 214

pyqt5这个为什么所有按钮都输出的是b4?不用列表的时候好像不会出现这种情况,这是怎么回事?要怎么解决?

class MyWidget(QWidget):
def init(self):
super(MyWidget, self).__init__()
self.setupUi()
self.setupFunction()
self.show()

def setupUi(self):
    self.layout = QGridLayout()
    self.setLayout(self.layout)
    self.bts = []
    for i in range(5):
        self.bts.append(QPushButton('b'+str(i)))
        self.layout.addWidget(self.bts[i])

def setupFunction(self):
    for i in range(5):
        self.bts[i].clicked.connect(lambda :self.printStr(self.bts[i].text()))

def printStr(self, str):
    print(str)

if name == '__main__':
app = QApplication(sys.argv)
wl = [MyWidget()]
sys.exit(app.exec_())

  • 写回答

1条回答 默认 最新

  • dabocaiqq 2019-07-20 22:18
    关注
    评论

报告相同问题?

悬赏问题

  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题