我正在編寫一個簡單的文本編輯器,所以我試圖在關閉應用程序之前檢查未保存的更改。現在我知道它必須是'刪除事件'的東西,並通過搜索我找到了一種方式,但它給出了一個錯誤。如何覆蓋pygtk中的delete-event?
這是我的代碼:
__gsignals__ = {
"delete-event" : "override"
}
def do_delete(self, widget, event):
print 'event overriden'
tabsNumber = self.handler.tabbar.get_n_pages()
#self.handler.tabbar.set_current_page(0)
for i in range(tabsNumber, 0):
doc = self.handler.tabbar.docs[i]
lines = self.handler.tabbar.lineNumbers[i]
self.handler.tabbar.close_tab(doc, lines)
# if self.handler.tabbar.get_n_pages() == 0:
# self.destroy_app()
def destroy_app(self):
gtk.main_quit()
,這是錯誤我得到:
TypeError: Gtk.Widget.delete_event() argument 1 must be gtk.Widget, not gtk.gdk.Event
什麼是做正確的方式?
我已經找到了答案,但我必須等待7個小時才能發佈。 – emostafa 2012-04-13 03:58:41