Python Pyside只执行一次操作

Python Pyside只执行一次操作,python,qt,pyside,Python,Qt,Pyside,我有两个按钮,我已经通过信号槽连接,就像这样 self.button_1.clicked.connect(self.someFunc) self.button_2.clicked.connect(self.someFunc2) 否每次单击按钮1、按钮2时,都会执行其功能。按钮位于按钮组中,因此一次只能检查一个按钮,我遇到的问题是每次按下按钮时功能都会运行,但我希望该功能只运行一次。有办法做到这一点吗?在函数的顶部,放一个if语句检查它是否已运行 firstRun = true def some

我有两个按钮,我已经通过信号槽连接,就像这样

self.button_1.clicked.connect(self.someFunc)
self.button_2.clicked.connect(self.someFunc2)

否每次单击按钮1、按钮2时,都会执行其功能。按钮位于按钮组中,因此一次只能检查一个按钮,我遇到的问题是每次按下按钮时功能都会运行,但我希望该功能只运行一次。有办法做到这一点吗?

在函数的顶部,放一个if语句检查它是否已运行

firstRun = true
def someFunc:
    if not(self.firstRun):
       return
    # doSomeFunc
    self.firstRun = false
或者在函数的顶部,您可以断开连接


希望有帮助。

我知道这个问题已经很晚了,但是如果其他人有这个问题,另一个建议是在按钮运行后通过setDisabled(True)方法禁用按钮。这会阻止它被激活,并向用户反馈他们无法再次运行它

ie
self.button\u 1.setDisabled(True)
函数体中的某个位置