Creé una aplicación wxPython que muestra algunos mensajes en una ventana de diálogo. La aplicación necesita que la ventana de diálogo sea destruida por la fuerza antes de hacer clic en el botón Aceptar del diálogo. Usé wx.lib.delayedresult para hacer la llamada de destrucción.¿Cómo puedo destruir de forma segura una ventana de diálogo de una aplicación wxPython?
Mi código es:
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()
Esto puede hacer lo que deseo hacer mientras me dieron un mensaje de error a continuación:
(Python: 15150): Gtk-CRITICAL **: gtk_widget_destroy : la afirmación `GTK_IS_WIDGET (widget) 'falló
¿Cómo destruyo" de manera segura "un cuadro de diálogo sin hacer clic en el botón de diálogo?
¡Gracias por responder! Ya lo intenté y descubrí que el diálogo no desaparecía. – Akira