¿Hay un diseñador GUI para python?

107

¿Existe un IDE GUI para programar Python al igual que Java tiene Netbeans?

Quería uno donde pudiéramos arrastrar y soltar cuadros de prueba y etiquetas tal como lo hacemos en los componentes de swing usando netbeans o eclipse.

¿O hay un complemento presente en netbeans o en el eclipse?

Roshan
fuente
¿Ha buscado en el Centro de software de Ubuntu algunos de los elementos enumerados en Herramientas para desarrolladores> Python?
Christopher Kyle Horton
44
Personalmente, recomiendo intentar crear algo a mano siguiendo un tutorial, porque si no comprende cómo interactúan los elementos que dibuja entre sí, tendrá dificultades para hacer que los botones funcionen y tal.
Ivo Flipse
1
Sin embargo, tenga en cuenta que, para cualquier cosa que no sea trivial, las aplicaciones gtk que no usan glade o algo similar se verán bastante feas y complicadas muy rápidamente. Incluso usando Glade, aún tendrás muchas oportunidades de aprender sobre la API Pygtk.
Stefano Palazzo
¿He votado por algo como Visual Studio para Python?
abdul qayyum

Respuestas:

103

Claro Instalar claro

Si quieres un diseñador de GUI wysiwyg, Glade es tu mejor apuesta:

  • primero, instalar gladedesde el centro de software
  • cree su GUI, guárdela como, digamos, myapp.glade

    ingrese la descripción de la imagen aquí

  • Vaya a la pestaña de señales y configure su devolución de llamada, comoon_window1_destroy

  • En su programa de Python, dígale a GTK que cargue las definiciones de UI

    import gtk
    
    
    class MyApp (object):
    
        def __init__(self):
            self.builder = gtk.Builder()
            self.builder.add_from_file("myapp.glade")
            self.builder.connect_signals(self)
    
        def run(self):
            self.builder.get_object("window1").show_all()
            gtk.main()
    
        def on_window1_destroy(self, *args):
            gtk.main_quit()
    
    
    MyApp().run()

Después de configurar todo, puede sumergirse directamente en el tutorial de Glade (como Jeremy Kerr mencionó en su respuesta). Comience aprendiendo sobre las diferentes opciones de diseño y señales.


Con rapidez Instalar rápidamente

Cuando se sienta cómodo con Glade, puede comenzar a usarlo a través de Quickly, que es un conjunto de programas para hacer que las tareas comunes en el desarrollo de software sean muy fáciles. Se encarga de las traducciones, el almacenamiento de la configuración, el empaquetado, la integración de la plataforma de lanzamiento, incluidos los PPA, y mucho más:

sudo apt-get install quickly
quickly create ubuntu-application hello-world
cd hello-world/

Rápidamente ahora crea un gran proyecto con todo lo que necesita ya configurado. Una interfaz gráfica de usuario , los archivos de traducción, la configuración a través de desktopcouch , etc.

Verá rápidamente configurar algunas ventanas (la aplicación principal, la configuración y un diálogo sobre) para usted. Para comenzar a editar su GUI:

  • correr quickly design

    ingrese la descripción de la imagen aquí

  • Para acceder al código de la aplicación, ejecute quickly edit

  • Ir al HelloWorldWindow.pyarchivo

  • Ahora comience a agregar manejadores de señal y lógica.

Finalmente, para ejecutar su aplicación, escriba quickly run.

En este punto, puede acceder a la documentación de PyGTK para conocer las señales, las firmas de sus manejadores, los diferentes métodos de widgets, etc.


Vea también algunas preguntas relacionadas:

Stefano Palazzo
fuente
2
Esta respuesta es tan buena que será un punto de referencia para los demás :)
Nathan Osman
1
Encontré Glade una RAD terrible y con errores.
renatov
49

Qt-Designer

PyQt viene con Qt 's Designer , que es un editor gráfico GUI bastante bueno, si te apetece escribir tu aplicación con el marco Qt.

Captura de pantalla de Qt Designer

Qt Creator

El nuevo IDE de Qt tiene soporte completo tanto para diseñar widgets (como el diseñador anterior) como para aplicaciones QtQuick, que es mejor para aplicaciones livianas, fluidas y táctiles (es decir, aplicaciones para tabletas / dispositivos móviles)

Macke
fuente
23

¿Busca un IDE completo (es decir, editor de código, entorno de tiempo de ejecución, herramientas de diseño de interfaz de usuario) o simplemente una utilidad para crear la interfaz de usuario?

Si lo que busca es un entorno de programación completo, eche un vistazo al conjunto de herramientas Quickly .

Si solo está buscando diseñar interfaces, puede usar el diseñador 'glade' para diseñar su interfaz usando widgets GTK, luego cargue esa definición de interfaz de usuario en cualquier programa de Python. Hay un Tutorial de programación de GUI GTK + y Glade3 (con ejemplos de Python y C).

Jeremy Kerr
fuente
14

Eric IDE Instalar eric

Prueba con Eric IDE. Creo que es el mejor IDE tanto para Python como para Qt4.

Eric IDE

Witek
fuente
2
¿Por qué se rechazó esto? Eric es una buena interfaz gráfica de usuario de Python que integra el desarrollo QT. Puede diseñar interfaces gráficas de usuario (usando QT Designer), e incluso compila los archivos .ui en python (no es necesario usar la línea de comandos). Es un poco un Eclipse o Visual Studio para pyQt. Es demasiado pesado para mi gusto, pero es una opción interesante para otros.
Javier Rivera
@JavierRivera: probablemente porque esto parece un IDE, no un diseñador de GUI.
Jeremy Kerr
8

wxFormBuilder

También depende de qué kit de herramientas de widgets desea utilizar. Prefiero wxWidgets con python, wxPython .

Por lo tanto, mi preferencia para construir la GUI es wxFormBuilder , está disponible desde el siguiente PPA:

Tiene la simplicidad de arrastrar y soltar widgets en un lienzo, y puede cambiar rápidamente a la pestaña de código para ver lo que ha generado, que para mi ojo sin tutor está limpio y ordenado. Como el nombre en la lata dice que es un generador de formularios, eso es en lo que se especializa. Así que no espere desarrollar un proyecto completo con él, sin embargo, si desea mantener el diseño del formulario separado del código de análisis, entonces hace el trabajo bien

Adrian
fuente
1
La versión original de Ubuntu no puede generar código Python por alguna razón. Espero que la versión PPA no tenga ese problema.
Christoph el
1
Sí, la versión PPA puede generar código python.
Christoph
3

Hay un niño nuevo en la ciudad: Camelot . Está diseñado para construir GUI realmente rápido. Le ayuda a centrarse en su aplicación, en lugar de en el código GUI. Los mantenedores dicen

Camelot proporciona componentes para crear aplicaciones comerciales sobre Python, SQLAlchemy y Qt . Está inspirado en la interfaz de administración de Django. Puede usar Camelot para desarrollar aplicaciones comerciales simples y complejas a gran velocidad.

El marco se ha presentado varias veces en reuniones internacionales de python. Sus ventajas son

Ventajas para desarrolladores

  • Además de alta calidad y tecnología probada

  • Las vistas están vinculadas al modelo de datos sin escribir código

  • Personalizable a través del marco de acciones

  • Documentado desde el tutorial de introducción a la impresión de informes

  • Warpspeed a solución desplegable

Ventajas para el usuario

  • GUI receptiva y familiar

  • Editores y controles de alta calidad.

  • Toneladas de funciones integradas como importación, exportación, impresión, copia de seguridad y restauración

  • Mapeado a procesos de negocio

Visite http://www.python-camelot.com/ para obtener más información, presentaciones, videos de youtube y más.

descargo de responsabilidad: he visto esto en acción y he hablado con los desarrolladores. Podría ser parcial, pero sinceramente creo que este es un gran software.

don.joey
fuente
2

SharpDevelop

Captura de pantalla de SharpDevelop

SharpDevelop es para desarrollar aplicaciones basadas en .Net Framework. Es compatible con IronPython y tiene un diseñador GUI para WinForm, Silverlight, WPF Application. Si bien Visual Studio también tiene varios diseñadores de GUI para IronPython, sin embargo, no tiene GUI para WinForm.

Denny Imanuel
fuente
1

nadie ha mencionado una herramienta que tenga mucho uso en otros idiomas, y que pueda ser conocida por el usuario inicial: Eclipse tiene una perspectiva para Python llamada PyDev.

Osis
fuente
¿Puede Eclipse construir una GUI? ¿Incluso en Java?
Eric Wilson
@FarmBoy: sí, puede.
RolandiXor
1
¿La perspectiva pydev tiene un diseñador GUI?
Stefano Palazzo
1

Echa un vistazo a PyForms, se basa en PyQt. Se puede usar con Qt Designer pero también es bastante fácil diseñar interfaces gráficas de usuario directamente en el script de Python.

https://github.com/UmSenhorQualquer/pyforms/

Ricardo Ribeiro
fuente
-4

El mejor IDE de Python es PyCharm. Pero no es gratis y no tiene un diseñador GUI. http://www.jetbrains.com/pycharm/index.html

wildDAlex
fuente
8
El OP mencionó específicamente que quería un diseñador de GUI.
fouric
2
en realidad, la edición de la comunidad es gratuita (4.5) y para ser justos, ninguna de las otras respuestas realmente proporcionó un IDE de construcción de GUI, solo mencionan soluciones a medias para evitarlo, y para el registro, PyCharm es un buena sugerencia siempre y cuando sepa cómo usarla (y sí, se puede usar con los constructores de GUI de la misma manera que los demás); es posible que desee agregar esa nota a su respuesta si desea recuperar parte del representante perdido
osirisgothra