class MyThread(QThread):
def __init__(self,a,b,parent=None):
super(QThread,self).__init__()
self.a1 = a
self.b1 = b
def run(self):
c = int(self.a1)+int(self.b1)
time.sleep(5)
print("Add = %s" %(c))
class MainWindow(QMainWindow,Ui_Form):
def __init__(self):
super().__init__()
self.setupUi(self)
self.radioButton_1.toggled.connect(lambda:self.test(self.radioButton_1))
def test(self,rbutton):
print('1')
add = rbutton.text()[-1]
radioname = "RadioButton" + str(add)
if rbutton.text() == radioname:
if add == "1":
a = self.lineEdit.text()
b = self.lineEdit_7.text()
self.thread = MyThread(a,b)
self.thread.start()
第一个问题,当我输入例如我的lineEdit中的10和10我得到了这个结果。
1
1
Add = 20Add = 20
为什么它似乎要运行两次?
第二个问题令人难以置信。如果我按下单选按钮时删除print('1')
,gui崩溃(“Python已停止工作”)