yml salto poner linea lib ejecutar crear como comentarios comentario archivo python user-interface markup

python - salto - Plataforma cruzada, Lenguaje de marcado GUI agnóstico del lenguaje?



yaml notation (10)

La biblioteca wxWidgets (anteriormente conocida como wxWindows) podría ser lo que estás buscando. Hay un puerto particularmente bueno para Python, wxPython , así como versiones para diferentes idiomas, como C #, C ++, Perl y Ruby, y para varias GUI: Win32, Mac OS X, GTK +, X11, Motif, WinCE. La biblioteca ha existido por un tiempo y es bastante sólida.

Aprendí Swing en el día pero ahora me he mudado a Python y quiero hacer algunas aplicaciones con GUI. No he tenido tiempo de aprender una nueva API GUI, así que he estado usando Jython, pero preferiría usar CPython.

Sería genial si puedo tener un marcado simple que me permita cambiar las bibliotecas de GUI. Sería aún mejor si puedo usar el mismo lenguaje de marcado en todos los idiomas para poder hacer rápidamente GUI para cualquier idioma que esté usando. ¿Alguien sabe de tal marcado / biblioteca?

He visto marcas como Glade y wxWidget''s markup (se me olvida el nombre). En parte, son lo que estoy buscando (hacer una GUI sin codificarlo en un idioma) pero están entrelazados con una biblioteca específica. Y ninguno de los dos es realmente agradable o amigable con la edición humana.


No estoy seguro de si esto es lo que está buscando, pero está Glade (o la descarga de Windows ) que es diseñadora de GTK +. Genera un archivo XML que luego se puede usar para construir la GUI en varios idiomas diferentes.


erm ... HTML? (tratando de ser gracioso aquí ... mientras esperamos respuestas reales ..)


http://en.wikipedia.org/wiki/Qt_(toolkit)">Qt (pronunciado "lindo" por sus creadores [1]) es un marco de desarrollo de aplicaciones multiplataforma, ampliamente utilizado para el desarrollo de programas de GUI.

Qt usa C ++ con varias extensiones no estándar implementadas por un preprocesador adicional que genera código C ++ estándar antes de la compilación. Qt también se puede usar en muchos otros lenguajes de programación; existen enlaces para Ada (QtAda) [4], C ** # ** (Qyoto / Kimono) [5], Java (Qt Jambi) [6], Pascal , Perl , PHP (PHP-Qt), Ruby (RubyQt) y Python (PyQt). Se ejecuta en todas las plataformas principales y cuenta con un amplio soporte de internacionalización. Las características que no son de GUI incluyen acceso a la base de datos SQL, análisis XML, gestión de subprocesos, soporte de red y una API multiplataforma unificada para el manejo de archivos.



@Cristian y Antony Cramp: si bien XUL es una buena opción para el desarrollo de la interfaz de usuario (multiplataforma, licencia de código abierto, utilizada en Firefox y otros programas importantes), ciertamente no es independiente del idioma. Estás vinculado a Gecko, con JS para scripting. Existe soporte experimental para las secuencias de comandos de Python, pero solo es experimental, AFAIK.

Puede definir la UI en XUL + JS y usar componentes back-end escritos en C ++ (también hay puentes de Python y Java disponibles).


Dudo seriamente que encuentres un lenguaje de marcas para GIU que no esté vinculado a una biblioteca específica. Para que exista tal cosa, debería haber un lenguaje de marcado de IGU estandarizado, con varias implementaciones.


Leí un poco sobre XML User Interface Language (XUL) y parece realmente robusto y bien soportado. El principal problema para mí es que está relacionado con el motor de renderizado Gecko, por lo que es una plataforma cruzada de la misma forma que wxWidgets, QT y GTK + son plataformas cruzadas. Además, las vinculaciones de Python no parecen tan buenas como esas otras bibliotecas.

GladeXML y XRC parecen mejores marcas


Me gustaría ir con XSLT, por lo tanto, podría integrarse en otras interfaces también.


Si cambia a .NET, puede usar un lenguaje de GUI común, por ejemplo Razor en MVC (si está haciendo desarrollo web), y puede elegir entre C # o VB o una cantidad de otros idiomas.