2011-01-13 60 views
0

我正在使用glade和pygtk,並且我有一個帶有樹形視圖的窗口,其中有一個按鈕,打開一個對話框,爲樹形視圖創建一個新條目。我想在對話框被銷燬時更新主窗口中的樹視圖,但我看不到一個簡單的方法來完成此操作。用pygtk更新數據銷燬

- 編輯 -

找到了答案,我只需要連接窗口銷燬信號

(dialog).window.connect('destroy', self.foo) 

回答

1

正確的做法是處理對話框在主窗口的響應:

def on_menu_item_activated(self, widget, data=None): 
    dialog = FunkyDialog() 
    response = dialog.run() 

    if response == gtk.RESPONSE_OK: 
     // update treeview 

也許更好的做法是使用Observer design pattern。當用戶按下確定,您保存您的數據。這會通知樹視圖已經做出更改,導致重新加載。