2013/5/14 Txema Vicente <tx...@nabla.net>: > El RAD tiene muy buena pinta.
Gracias, espero terminarlo este año. Estuve tratando de reusar conceptos de otros IDEs (drPython, Boa, PythonWin), aunque bastante más simplificado y compacto para intentar que sea relativamente más mantenible. >> El 14/05/2013 0:48, Mariano Reingart escribió: >> >> Por el error, te falta la imágen (wxBitmap::CreateFromImage(): invalid >> image). >> Deberías bajarte el archivo zip que contiene las imagenes (fondo >> tile.bmp, botones trash.gif y edit.gif): >> >> https://gui2py.googlecode.com/files/gui2py-0.9b.zip >> >> Gracias por reportarlo, voy a ver de agregarle una advertencia o >> excepción y una aclaración en la guía de instalación. >> >> Si podés, avisame si te funciona para descartar que haya algún otro >> inconveniente. > > > Era ese zip sobre el que estaba probando, en una carpeta en el escritorio, > despues de haber instalado el exe. Fijate de cambiar al directorio de la carpeta donde descomprimieste gui2py: cd Escritorio\gui2py python -m gui.tools.designer sample.pyw Me parece que es un tema de rutas, tendría que agregare al diseñador que busque el path absoluto según el .pyw. Si me confirmas que te funciona con las imagenes y es por este tema, ya veo de ajustar el código. > He modificado graphic.py/Bitmap.load_file, en lugar "self._filename = > filename": > > if os.path.exists(filename): > self._filename = filename > else: > print "Warning: Image %s not found" % filename > self._bits = wx.EmptyBitmap(10,10) > return Agregado, gracias! https://code.google.com/p/gui2py/source/detail?r=461ab8df95bddf3c665910f4344d902b327af5d5 (lo simplifiqué un poco y cambié el print por un warn) Por lo que te comentaba me imagino que a filename tendria que agregarle el path base del script, pero no se me ocurre una manera fácil de hacerlo (se podría usar __file__ en sample.pyw pero no sería tan portable), asique quizás sea mejor hacerlo en el diseñador. > Y ya funciona el sample.pyw, pero con algunas cosas en negro. Lo único es > que va tirando errores AttributeError: 'SuperToolTip' object has no > attribute '_superToolTip' [1] Si, el tema de _superToolTip parece un problema de esa biblioteca, tengo que encontrar como deshabilitarlo or removerlo. Igualmente es algo relativamente inofensivo, no debería causar mayores inconvenientes (ver abajo como omitir el mensaje). > Por otro lado, si quiero probar los controles uno a uno me casca con > "ValueError: Attempted relative import in non-package", y con razón. > "Relative imports for intra-package imports are highly discouraged." [2]. Me parece que es porque no lo estas usando como un paquete, sería: python -m gui.controls.button python -m gui.controls.listview Igualmente esos tests en algun momento habrá que pasarlos como unittests en una carpeta propia, posiblemente con un import absoluto si no va a ser un sub-paquete. Para más info ver: http://www.python.org/dev/peps/pep-0328/ > Aunque son detalles, son muy importantes, porque por muy bueno que sea un > proyecto, uno que lo baja para probarlo por primera vez te lo descarta en > dos minutos si empieza a ver errores, y siempre toca donde no tiene que > tocar. Totalmente, gracias por reportarlo Por estos temas estoy liberando las versiones alfa, para ir viendo los comentarios y sugerencias > Sigo trasteando, saludos. > > --------------------------- > Nota [1] > > C:\Users\txema>c:\python27\python -m gui.tools.designer > Warning: Image tile.bmp not found > Warning: Image edit.gif not found > Warning: Image edit.gif not found > BMP <gui.graphic.Bitmap instance at 0x03AA8B48> > Warning: Image trash.gif not found > Warning: Image trash.gif not found > BMP <gui.graphic.Bitmap instance at 0x03AB5E18> > basic creation timing: t1 - t0: 0.239000082016 > > Traceback (most recent call last): > File > "c:\python27\lib\site-packages\wx-2.9.4-msw\wx\lib\agw\supertooltip.py", > line 898, in OnWidgetEnter > if self._superToolTip: > AttributeError: 'SuperToolTip' object has no attribute '_superToolTip' > > Traceback (most recent call last): > File > "c:\python27\lib\site-packages\wx-2.9.4-msw\wx\lib\agw\supertooltip.py", > line 931, in OnWidgetLeave > if self._superToolTip: > AttributeError: 'SuperToolTip' object has no attribute '_superToolTip' Como dije arriba, no encontré la forma para deshabilitarlo y que no arroje este error (que igualmente es prácticamente inofensivo). Quizas lo remueva completamente y lo reemplaze con un sistema de ayuda html o similar. Para evitarlo podes comentar la linea 598 de designer.py: ##wellcome_tip(root.wx_obj) Como simplemente se usa para el mensaje de bienvenida, no debería afectar al resto de las funciones. > Nota [2] > > > Traceback (most recent call last): > File "button.py", line 13, in <module> > from ..event import FormEvent > ValueError: Attempted relative import in non-package > > http://www.python.org/dev/peps/pep-0008/ > > Le he metido esto para verlos: > sys.path.insert(0, > os.path.dirname(os.path.dirname(os.path.realpath(__file__)))) > from gui.event import FormEvent Nota: justamente para evitar esos problemas usé el import relativo, y así poder probarlo más facilmente sin necesidad de instalar el paquete o modificar el sys.path. Si querés ejecutarlo directamente, podes ver de agregarle __package__ http://www.python.org/dev/peps/pep-0366/ Nuevamente gracias por los comentarios Sds Mariano Reingart http://www.sistemasagiles.com.ar http://reingart.blogspot.com _______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/