与 QtCore.QEventLoop() 链接后无法单击 QRadioButton
Unable to click on QRadioButton after linking it with QtCore.QEventLoop()
几天前,我不得不 check/uncheck QRadioButton 进入 for 循环。这是 link
在对此实施 QEventLoop
之后,它一直运行良好,直到今天。现在我已经看到我的 QRadioButton(pass) 按钮允许我点击它但不是第二个 QRadioButton(fail)。
失败 QRadioButton 既不会挂起也不会被禁用,只是我无法点击它。
我的 QEventLoop 代码是:
#QLoopEvent
self.loop = QtCore.QEventLoop()
self.ui.fail_radio.clicked.connect(self.loop.quit)
self.ui.pass_radio.clicked.connect(self.loop.quit)
for 循环中的代码是:
self.ui.question_lbl.setText(self.saveQuestionslist[i])
self.loop.exec_();
if self.ui.fail_radio.isChecked():
***Some Code**
self.radioExclusive()
elif self.ui.pass_radio.isChecked():
***Some Code**
self.radioExclusive()
而这个 radioExclusive 函数就是这样做的:-
def radioExclusive(self):
self.ui.pass_radio.setAutoExclusive(False);
self.ui.fail_radio.setAutoExclusive(False);
self.ui.pass_radio.setChecked(False)
self.ui.fail_radio.setChecked(False)
self.ui.pass_radio.setAutoExclusive(True);
self.ui.fail_radio.setAutoExclusive(True);
我不确定这个问题是在什么时候发生的?
好的,问题不在于 QEventloop,而是在开发 Radio Pass 的 UI 时,Pass 的 Extra Area 隐藏了 Fail Radio。
几天前,我不得不 check/uncheck QRadioButton 进入 for 循环。这是 link QEventLoop
之后,它一直运行良好,直到今天。现在我已经看到我的 QRadioButton(pass) 按钮允许我点击它但不是第二个 QRadioButton(fail)。
失败 QRadioButton 既不会挂起也不会被禁用,只是我无法点击它。
我的 QEventLoop 代码是:
#QLoopEvent
self.loop = QtCore.QEventLoop()
self.ui.fail_radio.clicked.connect(self.loop.quit)
self.ui.pass_radio.clicked.connect(self.loop.quit)
for 循环中的代码是:
self.ui.question_lbl.setText(self.saveQuestionslist[i])
self.loop.exec_();
if self.ui.fail_radio.isChecked():
***Some Code**
self.radioExclusive()
elif self.ui.pass_radio.isChecked():
***Some Code**
self.radioExclusive()
而这个 radioExclusive 函数就是这样做的:-
def radioExclusive(self):
self.ui.pass_radio.setAutoExclusive(False);
self.ui.fail_radio.setAutoExclusive(False);
self.ui.pass_radio.setChecked(False)
self.ui.fail_radio.setChecked(False)
self.ui.pass_radio.setAutoExclusive(True);
self.ui.fail_radio.setAutoExclusive(True);
我不确定这个问题是在什么时候发生的?
好的,问题不在于 QEventloop,而是在开发 Radio Pass 的 UI 时,Pass 的 Extra Area 隐藏了 Fail Radio。