我有2個單選按鈕。第一個radio1
連接到功能func()
,並且該功能內部將按鈕pushButton
連接到另一個功能print_me()
。如何在QRadioButton上多次點擊,但只運行一次?
這是剝離下來的代碼:
radio = self.dockwidget.radioButton
radio.clicked.connect(func)
def func():
# Connect pushButton to "print_me" function
connect = self.dockwidget.pushButton
connect.clicked.connect(print_me)
def print_me():
print 'Connected'
和
當用戶點擊radio1
pushButton
然後,被打印的消息。問題是如果用戶單擊radio
10次然後pushButton
,則該消息也被打印10次。或者,如果用戶點擊radio1
,然後radio2
,並返回到radio1
,它仍然會打印該消息兩次。
有沒有一種方法可以防止這種情況發生,以便在單擊單選按鈕時僅打印一次消息?
你可以使用它存儲的功能是否已經稱爲一個全局變量。 –
@Ashafix - 謝謝,我會檢查這個,看看它是如何=) – Joseph
小心與全球變量的想法。你確定你只希望函數在整個程序執行過程中運行一次嗎?如果清除單選按鈕(例如通過單擊組中的另一個按鈕),然後再次單擊,是否要讓該功能第二次運行?如果用戶從該表單導航離開,然後再回到該表單,那該怎麼辦? – nephtes