raise en evento wx
Oswaldo Hernández
listas en soft-com.es
Mie Feb 22 11:03:34 CET 2006
Hola a todos,
Estoy intentando generar una excepcion desde un formulario wx, pero al parecer no esta funcionando
como creo que debiera.
La estructura es esta
class MyDialog(wx.Dialog):
....
def On_BtnCancelar(self, event):
# evento de cancelacion de entrada
# cierre de formulario modal y generacion de error
self.Close()
raise Exception("Cancelado por el usuario")
event.Skip()
...
# lanzamiento del formulario
if __name__ == "__main__":
app = wx.PySimpleApp(0)
wx.InitAllImageHandlers()
dialog_1 = MyDialog(None, -1, "")
try:
dialog_1.ShowModal()
print "======================="
print "Formulario NO Cancelado"
print "======================="
except:
print "Formulario Cancelado"
el resultado de ejecutar y pulsar en cancelar es:
Traceback (most recent call last):
File "C:\Python24\pruebas\pruebaraise.py", line 38, in On_BtnCancelar
raise Exception("Cancelado por el usuario")
Exception: Cancelado por el usuario
=======================
Formulario NO Cancelado
=======================
Al parecer si se genera la excepcion, pero esta NO es capturada por el try del main.
¿Alguien sabe porque no se esta capturando la excepcion?
¿Estoy haciendolo mal?
El entono que estoy utilizando es:
python 2.4.1
wx 2.6.1 unicode
Windows XP
Adjunto el fichero .py con el ejemplo funcional
Agradeceria cualquier comentario, gracias.
--
*****************************************
Oswaldo Hernández
oswaldo en soft-com.es
*****************************************
------------ próxima parte ------------
An embedded and charset-unspecified text was scrubbed...
Name: pruebaraise.py
URL: <http://mail.python.org/pipermail/python-es/attachments/20060222/cb2cf4d3/attachment.ksh>
------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es
Más información sobre la lista de distribución Python-es