PySide2的QPushButton使用sender()后找不到对象
因为需要对未知数量的按钮绑定点击事件触发的函数,同时需要每个按钮需要传入不同的参数好区分点击的是哪一个,所以使用了sender()。代码如下
new_button_widget = QPushButton(self.log_widget)
new_button_widget.clicked.connect(lambda:self.testfunc(new_button_widget.sender().objectName()))
这段代码在PyQt5下可以运行,由于工作需要我将它换成了PySide2,于是出现了上面的问题
报错信息如下:
目前只测出将sender()去掉后程序无报错但是按钮传递的参数全部都变成一样
经过测试发现按钮对象调用sender()之后对象类型变为NoneType,但不知道具体原因和结局办法
推荐文章: