Как я могу безопасно уничтожить диалоговое окно приложения WXPYPHON?

Я создал приложение WxPython, которое показывает некоторые сообщения в диалоговом окне. Окно диалогового окна необходим, чтобы быть уничтоженным приложением, прежде чем я нажму кнопку «Диалог». Я использовал wx.lib.delayedresult, чтобы сделать вызов уничтожения.

Мой код:

import wx
dlg=wx.MessageDialog(somewindow,'somemessage')
from wx.lib.delayedresult import startWorker
def _c(d):
    dlg.EndModal(0)
    dlg.Destroy()
def _w():
    import time
    time.sleep(1.0)
startWorker(_c,_w)
dlg.ShowModal()

Это может сделать то, что я желаю сделать, пока я получил сообщение об ошибке ниже:

(Python: 15150): GTK-Critical **: GTK_Widget_Destrether: Assertion `GTK_IS_WIDGET (виджет) ' Не удалось

Как мне «безопасно» уничтожить диалог, не нажав кнопку диалога?

6
задан joaquin 30 November 2011 в 17:48
поделиться