2011-05-29 37 views
2

我有一個應用程序,我正在與pygtk和格萊德。無法通過使用Glade的回調傳遞用戶數據

我有一個單選按鈕系列,我正在努力工作。在按鈕切換後嘗試傳遞用戶數據時我很難過。回調可以正常工作,但不會發送在glade的用戶數據字段中的處理程序旁邊輸入的用戶數據。

就像一個簡單的測試,我這樣做是爲一類的一部分:

def on_output_toggled(self, widget, data=None): 
    print data 

空地內,有可能被設定在處理程序和M4B爲on_output_toggled信號「切換」一個單選按鈕用戶數據。從這個

預計終端輸出的單選按鈕後選擇是:

m4b 

我得到的是:

None 

我在做什麼錯。除了部件本身之外,沒有任何東西被傳遞給回調。

感謝, Narnie

回答

1

「用戶數據」你格萊德進入實際只應在格萊德文件中定義的其他部件(或動作,或對象)的名稱。在你的情況下,需要在你的Glade文件的某個地方有一個名爲「m4b」的對象。

+0

是的,我發現這是真的,這很糟糕,因爲如果你手動設置它而不是使用Glade,你可以傳遞你想要的任何用戶信息給你的回調,而不必傳遞一個函數/對象。格萊德在這方面是相當有限的,我很困惑它爲什麼會這樣設計。我可能會提交一個錯誤報告。 – narnie 2012-03-03 03:15:04

相關問題