[Python-es] Dudas al usar GTK en Linux y WxPython en Windows para una aplicación

monoBOT monobot.soft en gmail.com
Mar Dic 3 17:56:37 CET 2013


Yo he hecho aplicaciones con WxPython y funcionaban igual para windows y
linux. (el aspecto es diferente pero las pantallas tienen lo mismo)



El 3 de diciembre de 2013 16:42, Mario Lacunza <mlacunza en gmail.com>escribió:

>  Hola,
>
> la verdad q no entiendo el enrollo q estas planeando.. si te ves la
> definicion de wxPython este wrapper para python de wxWidgets lo q hace (a
> diferencia de QT) es usar los controles nativos del OS, es decir en win
> usara los de win y en Linux GTK, es decir no necesitas nada salvo empezar a
> programar.. o de casualidad ya has hecho pruebas y no funciona como
> esperas/deberia ser??
>
> Saludos / Best regards
>
> Mario Lacunza
> Email:: mlacunza en gmail.com
> Personal Website:: http://www.lacunza.biz/
> Hosting:: http://mlv-host.com/
> Mascotas Perdidas:: http://mascotas-perdidas.com/
> Google Talk / Y! messenger / Skype: mlacunzav
>
> El 03/12/13 10:13, manuelcortez escribió:
>
> Hola,
>
> Para una aplicación que planeo correr en dos tipos de SO (Win32 y
> GNU/Linux) necesito utilizar diferentes librerías para interfaces
> gráficas. Por cuestiones de Accesibilidad, bajo Linux debería usar GTK+3
> y en Windows WxPython. MI pregunta es si puedo hacer esto con un mismo
> código fuente, es decir, si en el mismo programa podría hacer que se
> tomara una u otra librería sin afectar al rendimiento del mismo.
>
> En un principio pensé en hacer algo así:
>
> Crear un módulo llamado GUI, que dentro contenga una carpeta por cada
> SO, o sea dos directorios, win32 y linux. Poner el __init__.py en cada
> uno de esos directorios, e importar todo lo que necesito que puedan
> importar otras partes de la aplicación. Luego, fuera de esos
> directorios, en el directorio GUI, hacer el __init__.py, con algo como esto:
>
> # -*- coding: utf-8 -*-
> import sys
>
> if sys.platform == "win32":
> from win32 import *
> elif sys.platform == "linux2":
> from linux import *
>
> Y así ir haciendo con cada SO que necesite.
>
> Las preguntas:
>
> 1. ¿Hay alguna forma mejor de hacer esto? Solo se necesitarían librerías
> gráficas diferentes, todo lo demás funcionará bien en ambas plataformas.
> 2. En el archivo que ejecuta la aplicación, se inicializa el MainLoop de
> Wx para Windows o el GTK si se usa en Linux. Uso if's como en los
> módulos para determinar la plataforma. Si el import de wx o GTK está
> dentro del bloque de código del IF, supongo que no se importará si la
> condición no es cierta. ¿Es mejor separar el código y hacer un archivo
> para inicializar la app en Windows y otro para Linux?
> 3. En el setup.py, por ahora no he encontrado forma de hacer que como
> dependencia se tenga GTK o WX si se tiene según qué plataforma, debería
> volver a probar con IF? o hay instrucciones en setuptools para usar
> según qué herramientas para diferentes OS.
>
> Muchas gracias por la respuesta, saludos!
>
>
>
>
> _______________________________________________
> Python-es mailing listPython-es en python.orghttps://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> https://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>


-- 
*monoBOT*
Visite mi sitio(Visit my site): monobotblog.alvarezalonso.es
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20131203/c5e05713/attachment.html>


Más información sobre la lista de distribución Python-es