1
我有這一個切換按鈕的PyGTK的標籤一個簡單的回調函數:爲什麼在點擊工具按鈕的PyGTK的回調執行兩次時點擊一次
def langSelectHandler(self, widget, callback_data=None):
if self.lang == "fr":
self.lang = "de"
print "changed to de"
widget.set_label("Deutsch")
else:
self.lang = "fr"
print "changed to fr"
widget.set_label("Français")
按鈕連接這樣的:
self.langSelect.connect("clicked", self.langSelectHandler)
(我使用每次調用產生的隨機數字驗證了重複呼叫,它們是不同的) 我的問題是,回調會執行兩次,因此會切換回其舊值,因此不會顯示任何更改。爲什麼到底是這種情況,以及如何防止這種情況?
感謝, 朱利安
它不應該。我不太瞭解PyGtk,但是也許你使用連接兩次? – utdemir
謝謝,這是從我的空地文件裏面「盲」連接我在編碼時忘記了:)我今天剛開始用gtk編程,所以對我來說這是一個相當新的話題 – Julian
@Julian如果你解決了這個問題,你應該發佈解決方案作爲你的問題的答案,然後'接受'答案。這可以讓其他用戶更容易找到解決方案,並看到您的問題已得到解答。 –