Frage Gibt es einen GUI-Designer für Python?


Gibt es eine GUI-IDE für die Programmierung von Python, so wie Java Netbeans hat?

Ich wollte einen, bei dem wir Testboxen und Etiketten genau wie bei Swing-Komponenten mit Netbeans oder Eclipse ziehen und ablegen können.

Oder gibt es ein Add-on in Netbeans oder Eclipse selbst?


107
2017-08-08 03:23


Ursprung


Haben Sie im Ubuntu Software Center nach einigen der unter den Entwicklertools> Python? - Christopher Kyle Horton
Ich persönlich empfehle, dass Sie versuchen, etwas von Hand nach einem Tutorial zu erstellen, denn wenn Sie nicht begreifen, wie die Elemente, die Sie zeichnen, miteinander interagieren, werden Sie Schwierigkeiten haben, Knöpfe zum Arbeiten zu bekommen und so. - Ivo Flipse
Beachten Sie jedoch, dass für alle nicht-trivialen Anwendungen gtk-Anwendungen, die keine Lichtung oder ähnliches verwenden, ziemlich schnell hässlich und kompliziert aussehen. Selbst wenn Sie die Lichtung nutzen, haben Sie immer noch viele Möglichkeiten, etwas über die Pygtk Api zu lernen. - Stefano Palazzo♦
Ich habe mich für alles wie Visual Studio für Python entschieden? - abdul qayyum


Antworten:


Lichtung  Install glade

Wenn Sie einen WYSIWYG GUI-Designer haben möchten, ist Glade die beste Wahl:

  • zuerst installieren glade aus dem Software-Center
  • Erstellen Sie Ihre GUI, speichern Sie sie als, sagen wir, myapp.glade

    enter image description here

  • Gehe zum Signale Tab und richten Sie Ihren Rückruf ein, z on_window1_destroy

  • Informieren Sie GTK im Python-Programm, dass die UI-Definitionen geladen werden

    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()
    

Nachdem Sie alles eingerichtet haben, können Sie direkt in den Glade-Tutorial (wie Jeremy Kerr in seiner Antwort erwähnt). Beginnen Sie mit dem Erlernen der verschiedenen Layout-Optionen und Signale.


Schnell  Install quickly

Wenn Sie sich mit der Lichtung wohl fühlen, können Sie sie mit Quickly verwenden, einer Reihe von Programmen, die die üblichen Aufgaben bei der Entwicklung von Software sehr einfach machen. Es kümmert sich um Übersetzungen, Speicherung der Konfiguration, Verpackung, Launchpad-Integration einschließlich PPAs und vieles mehr:

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

Erstellt schnell ein riesiges Projekt mit allem, was Sie bereits eingerichtet haben. A gui, die Übersetzungsdateien, Konfiguration via Desktopcouch, und so weiter.

Sie sehen schnell einige Fenster (die wichtigste App, Konfiguration und einen Dialog) für Sie. Um mit der Bearbeitung Ihrer GUI zu beginnen:

  • Lauf quickly design

    enter image description here

  • Um zum App-Code zu gelangen, starte quickly edit

  • Gehe zum HelloWorldWindow.py Datei

  • Beginnen Sie nun, Signalhandler und Logik hinzuzufügen.

Geben Sie zum Ausführen Ihrer Anwendung schließlich ein quickly run.

An dieser Stelle können Sie in die PyGTK-Dokumentation einsteigen, um mehr über die Signale, die Signaturen ihrer Handler, die Methoden der verschiedenen Widgets usw. zu erfahren.


Siehe auch einige verwandte Fragen:


103
2017-08-08 05:42



Diese Antwort ist so gut, dass es ein Benchmark für andere wird :) - Nathan Osman
Ich fand Lichtung eine schreckliche und buggy RAD. - renatov


Qt-Designer

  • Qt5 ist ebenfalls verfügbar.
  • qt4-Designer Install qt4-designer
  • qt3-Designer Install qt3-designer

PyQt kommt mit Qtist es DesignerDies ist ein ziemlich übersichtlicher grafischer GUI-Editor, wenn Sie Ihre App mit dem Qt-Framework schreiben möchten.

Qt Designer screenshot

Qt-Ersteller

Die neue IDE von Qt bietet volle Unterstützung sowohl für das Design von Widgets (wie oben beschrieben) als auch für QtQuick-Anwendungen, die besser für leichte, flüssige, touch-fähige Anwendungen (d. H. Tablet / Mobile-Anwendungen) sind


49
2017-08-08 11:31





Sind Sie auf der Suche nach einer vollständigen IDE (z. B. Code-Editor, Laufzeitumgebung, UI-Layout-Tools) oder nur nach einem Dienstprogramm zum Erstellen der Benutzeroberfläche?

Wenn Sie eine vollständige Programmierumgebung suchen, werfen Sie einen Blick auf die Schnell Toolset.

Wenn Sie nur Schnittstellen entwerfen möchten, können Sie den Designer 'glade' verwenden, um Ihre Benutzeroberfläche mit GTK-Widgets zu gestalten, und diese UI-Definition anschließend in ein beliebiges Python-Programm laden. Da ist ein GTK + und Glade3 GUI Programmierung Tutorial (mit Python- und C-Beispielen).


23
2017-08-08 03:37





Eric IDE  Install eric

Versuchen Sie es mit Eric IDE. Ich denke, es ist die beste IDE sowohl für Python und Qt4.

Eric IDE


14
2017-08-09 06:59



Warum wurde das abgelehnt? Eric ist eine nette Python-GUI, die QT-Entwicklung integriert. Es kann GUIs entwerfen (mit QT Designer), und es kompiliert sogar die .ui-Dateien zu Python (keine Notwendigkeit, die Befehlszeile zu verwenden). Es ist ein Eclipse oder Visual Studio für pyQt. Es ist zu schwer für meinen Geschmack, aber es ist eine interessante Option für andere. - Javier Rivera
@JavierRivera: wahrscheinlich, weil dies wie eine IDE aussieht, kein GUI-Designer. - Jeremy Kerr


wxFormBuilder

Es hängt auch davon ab, welches Widget-Toolkit Sie verwenden möchten. ich bevorzuge wxWidgets mit Python, wxPython.

Also meine Präferenz für den Aufbau der GUI ist wxFormBuilder, es ist verfügbar von folgenden PPA:

Es hat die einfache Drag-and-Drop von Widgets auf eine Leinwand, und Sie können schnell auf den Code-Tab wechseln, um zu sehen, was es erzeugt hat, was für mein ungeschultes Auge sauber und übersichtlich ist. Wie der Name auf der Dose sagt, es ist ein Formular-Generator, das ist, worauf es spezialisiert ist. Erwarten Sie also nicht, ein komplettes Projekt damit zu entwickeln, aber wenn Sie das Formular-Design getrennt von dem Analyse-Code behalten möchten, tut es das Arbeit gut.


8
2017-08-09 14:28



Die ursprüngliche Ubuntu-Version kann aus irgendeinem Grund keinen Python-Code generieren. Ich hoffe, dass die PPA-Version dieses Problem nicht hat. - Christoph
Ja, die PPA-Version kann Python-Code generieren. - Christoph


Es gibt ein neues Kind in der Stadt: Camelot. Es wurde entwickelt, um GUI's wirklich schnell zu erstellen. Es hilft Ihnen, sich auf Ihre Anwendung und nicht auf den GUI-Code zu konzentrieren. Die Betreuer sagen

Camelot bietet Komponenten zum Erstellen von Geschäftsanwendungen auf Python, SQLAlchemy und Qt. Es wurde von der Django Admin-Oberfläche inspiriert. Sie können Camelot verwenden, um einfache und komplexe Geschäftsanwendungen mit Warpgeschwindigkeit zu entwickeln.

Das Framework wurde mehrmals in internationalen Python-Meetings vorgestellt. Seine Vorteile sind

Entwickler Vorteile

  • Zusätzlich zu hochwertiger und bewährter Technologie

  • Ansichten sind an das Datenmodell gebunden, ohne Code zu schreiben

  • Anpassbar über das Aktions-Framework

  • Dokumentiert vom Einführungsprogramm bis zum Berichtsdruck

  • Warpspeed zur bereitstellbaren Lösung

Vorteile für den Benutzer

  • Responsive und vertraute GUI

  • Hochwertige Editoren und Steuerelemente

  • Tonnenweise integrierte Funktionen wie Importieren, Exportieren, Drucken, Sichern und Wiederherstellen

  • Zu Geschäftsprozessen zugeordnet

Prüfen http://www.python-camelot.com/ für weitere Informationen, Präsentationen, YouTube-Videos und mehr.

Disclaimer: Ich habe das in Aktion gesehen und habe mit den Entwicklern gesprochen. Ich mag voreingenommen sein, aber ich glaube ehrlich, dass das eine großartige Software ist.


3
2017-09-18 10:17





niemand hat das Werkzeug erwähnt, das in anderen Sprachen ziemlich viel benutzt wird, und könnte durch das Starten des Benutzers bekannt sein - Eclipse hat eine Perspektive für python namens PyDev.


1
2017-08-08 12:07



Kann Eclipse eine GUI erstellen? Sogar in Java? - Eric Wilson
@ FarmBoy: Ja kann es. - RolandiXor♦
Hat die Pydev-Perspektive einen GUI-Designer bekommen? - Stefano Palazzo♦


Sieh dir PyForms an, es basiert auf PyQt. Es kann mit dem Qt Designer verwendet werden, aber es ist auch sehr einfach, GUIs direkt im Python-Skript zu entwerfen.

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


1
2017-09-09 22:57