Entwickeln von Anwendungen mit Python 3, Glade und GTK + 3 unter Windows

Einführung

In GNU / Linux ist das Entwickeln von Anwendungen mit Python 3, Glade und GTK + 3 sehr einfach. Die Pakete sind in den meisten Distributionen standardmäßig enthalten.

Durch Lichtung Wir können schnell und einfach Benutzeroberflächen erstellen und diese dann in Verbindung mit Python verwenden. Um dies zu erreichen, verwenden Sie PyGObject dank des von GNOME angebotenen Introspektionssystems, das die schnelle Anwendungsentwicklung (Rapid Application Development, RAD) erheblich vereinfacht; Es ist auch möglich, unsere mit Glade erstellten Schnittstellen aus anderen Programmiersprachen zu verwenden.

Das Problem tritt auf, wenn wir unsere Anwendungen in Microsoft Windows verwenden möchten, da es bis vor kurzem keine offiziellen Pakete für dieses System gab.

Mit diesem Tutorial sollen die Anwendungen, die in GNU / Linux mit Python 3 und GTK + 3 erstellt wurden, unter Windows problemlos ausgeführt werden.

Bedarf

  • Python 3.3
  • Gtk + 3
  • Glade 3.14 oder höher (GUI-Designer)
  • Pygoobjekt

Installation unter Windows

Zunächst wird ein Ordner mit dem Namen erstellt Software. oder eine andere Ihrer Präferenzen, und wir speichern alle heruntergeladenen Pakete darin.

Installationspakete herunterladen

Laden Sie Python 3.3 herunter

Es kann von der offiziellen Python-Seite heruntergeladen werden www.python.org

Laden Sie das Python-Installationsprogramm herunter

Laden Sie das Python-Installationsprogramm herunter

Durch Klicken auf den Link (Windows Installer) wird das Python-Installationsprogramm heruntergeladen.

Laden Sie Glade herunter

Website herunterladen: Glade.gnome.org

Sowohl Python- als auch Glade-Versionen sind 32-Bit-Versionen, können jedoch problemlos auf 64-Bit-Systemen ausgeführt werden

Lichtungsseite

Lichtungsseite

Laden Sie PyGObject herunter

Website herunterladen: https://wiki.gnome.org/PyGObject

Wir müssen die Version für GTK + 3 herunterladen

PyGObject

PyGObject

PyGObject im Google-Code

PyGObject im Google-Code

Installieren der Pakete

Nun, bis zu diesem Punkt haben wir bereits alle heruntergeladenen Pakete im Ordner Software. und da wir jedes Paket heruntergeladen haben, beginnen wir zuerst mit der Python-Installation.

Heruntergeladene Pakete

Heruntergeladene Pakete

Python-Installation

Die Installation ist sehr einfach. Der Assistent führt uns durch den Vorgang. Wir lassen alle Optionen standardmäßig markiert.

Python-Installationsprogramm

Python-Installationsprogramm

Wie im Bild zu sehen, wird Python im Ordner installiert C: \ Python33 \ Standardmäßig belassen wir es wie es ist und fahren mit der Installation fort.

Python-Installationsordner

Python-Installationsordner

An diesem Punkt der Installation wählen wir die Option Fügen Sie python.exe zu Path hinzumit dem Ziel, dass ein Python-Interpreter beim Starten ausgeführt wird, ohne dass er manuell zum Systempfad hinzugefügt werden muss.

Fügen Sie Python zum Systempfad hinzu

Fügen Sie Python zum Systempfad hinzu

Dann beenden wir die Installation und Python wurde auf unserem System installiert.

Lichtungsinstallation

Die Installation von Glade stellt keine große Komplikation dar. Wir führen das Installationsprogramm aus und befolgen die Schritte des Assistenten.

Lichtung einbauen

Lichtung einbauen

PyGObject-Installation

Wir hatten das Paket heruntergeladen pygi-aio-3.4.2rev11.7zDieses Paket enthält PyGObject für Python 3.3- und GTK + 3-Bibliotheken für Windows, die mit komprimiert sind 7-zipWir entpacken es und haben einen Ordner mit folgendem Inhalt:

Inhalt des Ordners pygi-aio-3.4.2rev11.7

Inhalt des Ordners pygi-aio-3.4.2rev11.7

Jetzt kopieren wir den Ordner gtk a C: \ Python33 \ Lib \ Site-Pakete Hier werden die Pakete von Drittanbietern für Python installiert.

Kopieren Sie den GTK-Ordner

Kopieren Sie den GTK-Ordner

Gtk-Ordner unter C: \ Python33 \ Lib \ site-packages

Gtk-Ordner unter C: \ Python33 \ Lib \ site-packages

Wir gehen zurück zu unserem Ordner pygi-aio-3.4.2rev11 und wir öffnen den Ordner py33 für die Python-Version ist das 3.3

Inhalt des Ordners py33

Inhalt des Ordners py33

Wir wählen Alle Inhalte der Ordner py33 und wir kopieren es zurück in den Ordner C: \ Python33 \ Lib \ Site-Paketewerden wir gebeten zu mischen und zu überschreiben, wir antworten bejahend. Der Inhalt des Ordners Site-Pakete es wäre wie im folgenden Bild gezeigt:

Kopieren Sie den Inhalt des Ordners py33 nach C: \ Python33 \ Lib \ site-packages

Kopieren Sie den Inhalt des Ordners py33 nach C: \ Python33 \ Lib \ site-packages

Überprüfen der korrekten Installation von PyGobject und GTK + 3

Um zu überprüfen, ob unsere Installation korrekt war, öffnen wir den Python IDLE und importieren die GTK + 3-Bibliotheken. Wenn keine Fehlermeldung angezeigt wird, wurde alles korrekt ausgeführt.

from gi.repository import Gtk

PyGobject und GTK + 3 korrekt installiert

PyGobject und GTK + 3 korrekt installiert


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.

  1.   Joaquin sagte

    Und warum GTK? Wäre es nicht besser, sich in QT zu entwickeln? Abgesehen davon, dass es sich um eine Multiplattform handelt und viele sagen, dass es die Zukunft ist

    1.    artus sagte

      Nun, die beiden großartigen Grafikbibliotheken auf dem GNU / Linux-Desktop sind GTK und QT. Jede wählt diejenige aus, die sie bevorzugen. Es gibt keinen Grund zu kämpfen.

      Der Unterschied zwischen GTK und QT besteht darin, dass letzteres ein Framework ist, das zwar sehr gut ist, aber als Framework etwas mehr Ressourcen verbraucht.

      Zum Beispiel werden Mozilla Firefox, Google Chrome, LibreOffice und eine lange usw. mit GTK erstellt. Dies bedeutet nicht, dass es besser ist als QT. Jeder sollte das auswählen, das seinen Vorlieben und Bedürfnissen entspricht. Wir möchten keine Diskussion darüber führen.

      1.    pandev92 sagte

        Google Chrome ab Version 33, gtk verlassen.

  2.   Rolo sagte

    und warum die Erklärung für Windows und nicht Linux

    1.    Germán sagte

      Liegt es daran, dass unter Linux bereits alles gepackt ist und sich in den offiziellen Repositories jeder Distribution befindet? In Fedora habe ich beispielsweise Python 3, Gtk + 3 und PyGobject bereits standardmäßig installiert. Wenn ich Glade will, ist es nur "yum install glade". Einfach richtig? 🙂

    2.    artus sagte

      Denn wie Germán sagt, sind sie für GNU / Linux-Distributionen bereits gepackt und es ist sehr einfach, sie zu installieren. Zum Beispiel ist die Installation von Glade in Debian sehr einfach:
      Eignung installieren Lichtung

  3.   Marcelo sagte

    Wenn ich Python 2.7 verwenden möchte, sind die Schritte dieselben?
    Bei der Installation von 2.7-Bit-Python 32 (auch wenn Sie das 64-Bit-Betriebssystem verwenden) und anstelle des Ordners py33 würde natürlich 2.7 verwendet. Würde es funktionieren?
    Danke.

    1.    artus sagte

      Ja, wenn Sie ein Problem haben, hinterlassen Sie mir einen Kommentar.

      Luck.

      1.    Marcelo sagte

        Danke, ich habe es bereits versucht und im Moment funktioniert die "Hallo Welt" für mich.

        Ich sehe, ob ich ein gutes pyGTK3-Tutorial oder wie auch immer es heißt und Probleme bekommen kann, Warnung.

          1.    Marcelo sagte

            Caramba! Vielen Dank!

          2.    Marcelo sagte

            Testen Sie GTK3 mit Python 2.7 unter Windows und folgen Sie dem Tutorial. Bisher funktionieren alle Programme für mich, außer dem in Kapitel 14 (IconView -> https://python-gtk-3-tutorial.readthedocs.org/en/latest/iconview.html)

            Es gibt mir den folgenden Fehler:
            Traceback (jüngste Aufforderung zuletzt):
            Datei "C: \ Benutzer \ Benutzer \ Desktop \ test.py", Zeile 24, in
            win = IconViewWindow ()
            Datei "C: \ Benutzer \ Benutzer \ Desktop \ test.py", Zeile 19, in __init__
            pixbuf = Gtk.IconTheme.get_default (). load_icon (Symbol, 64, 0)
            Datei "C: \ Python27 \ lib \ site-packages \ gi \ types.py", Zeile 47, in Funktion
            return info.invoke (* args, ** kwargs)
            GError: Das Symbol 'gtk-cut' ist im Thema nicht vorhanden

            Ich habe es mit anderen Symbolen versucht und es funktioniert auch nicht. Muss ich ein Thema installieren? Danke seitdem.

          3.    Marcelo sagte

            Beispiel 19. Drag & Drop auch nicht.

            Die Funktion, die in beiden Fällen aufgerufen wird und bei der eine Fehlermeldung angezeigt wird, lautet:

            pixbuf = Gtk.IconTheme.get_default (). load_icon (icon_name, 16, 0)

            Ich kann das Symbol nicht finden, aber in anderen Beispielen können Sie sie verwenden. Es gibt mir nur einen Fehler, wenn ich es mit dieser Funktion verwenden möchte (hier kann icon_name durch einen Wert wie Gtk.STOCK_CUT oder was auch immer ersetzt werden und es gibt genau den gleichen Fehler).

          4.    Marcelo sagte

            Ich rede weiter mit mir. Was in anderen Beispielen für mich funktioniert, ist, dass die Bilder auf die Schaltflächen geladen werden. Ich kann die Symbole nicht mit der Funktion laden, die in den beiden zuvor angegebenen Beispielen enthalten ist.

          5.    artus sagte

            Ich denke der Fehler ist klar:
            GError: Das Symbol 'gtk-cut' ist im Thema nicht vorhanden

            Anscheinend ist dieses Symbol nicht verfügbar. Verwenden Sie ein anderes Symbol. Wahrscheinlich hat der Paketbetreuer die Themensymbole nicht enthalten oder sie können nicht im Standardpfad gefunden werden. Verwenden Sie eine GNU / Linux-Distribution und prüfen Sie, ob der gleiche Fehler weiterhin auftritt.

            In Bezug auf Frage 19 scheint es sich um die PyGobject-Version zu handeln, die oben in der Dokumentation steht:

            Note
            Für die folgenden Beispiele sind Versionen von PyGObject = 3.0.3 erforderlich.

            Die Version, die Sie haben, ist 3.0. Versuchen Sie es mit einer GNU / Linux-Distribution. und dann müssen wir warten, bis sie das Paket (für Windows) aktualisiert haben, oder Sie können es auf jeden Fall selbst kompilieren.

            Grüße und weiter.

          6.    Marcelo sagte

            In Ubuntu funktionieren alle Tutorial-Beispiele perfekt für mich. Unter Windows funktioniert es immer noch nicht. Ich werde warten müssen. Ein anderes Beispiel, das nicht läuft, ist das Beispiel des Spinners, der die Animation nicht ausführt. Grüße und danke.

  4.   Yoschua sagte

    Ich habe das Installations-Tutorial befolgt und alles Schritt für Schritt installiert.
    Und den folgenden Code ausführen:
    aus gi.repository importieren Gtk

    Klasse FiestraPrincipal:
    def __init __ (self):
    Dateiname = "/ data / dam / Python exemplars / Saudoform"
    Konstruktor = Gtk.builder ()
    constructor.add_from_file (Dateiname)
    # Wörterbuch, in dem wir Sinais mit Ereignissen in Beziehung setzen
    Sinais = {
    «ClickedAccept»: self.clic_boton,
    "ActivateTextCadro": self.clic_boton,
    "DestroyFiestra": Gtk.main_quit

    }
    constructor.connect_signals (Sinais)
    #Wir erhalten einen Verweis auf den XML-Deskriptor, um darauf zugreifen zu können
    self.label = self.widgets_widget ("Label")
    self.cadroTexto = self.widgets_widget ("CadroTexto")

    def button_click (self, widget):
    text = self.cadroTexto.get_text ()
    self.label.set_text ("Welle% s"% Text)

    if __name__ == »__ main__»:
    FiestraPrincipal ()
    Gtk.Main ()

    Ich bekomme diese Antwort:
    Traceback (jüngste Aufforderung zuletzt):
    Datei «C: / Benutzer / admin / Google Drive / test / SaudoForm.py», Zeile 3, in
    aus gi.repository importieren Gtk
    Datei "C: \ Python33 \ lib \ site-packages \ gi \ __ init__.py", Zeile 27, in
    aus ._gi import _API, Repository
    ImportError: DLL-Ladevorgang fehlgeschlagen:% 1 ist keine gültige Win32-Anwendung.

    Jemand weiß, was das Problem ist oder wie seine mögliche Lösung aussehen könnte.
    Vielen Dank.

  5.   Jesu sagte

    Interessant. Ich hatte die Installation unter Linux durchgeführt, aber die Erklärung für Windows ist in Ordnung, jetzt habe ich sie in beiden. 😉

  6.   Raffael Carmona sagte

    Es ist lustig auf einem 7-Bit-Windows 32 zum ersten Mal.
    Unter Windows 7 64-Bit kann ich es nicht zum Laufen bringen, ich bekomme es immer;
    >>> aus gi.repository importieren Gtk
    Traceback (jüngste Aufforderung zuletzt):
    Datei «», Zeile 1, in
    Datei "C: \ Python33 \ lib \ site-packages \ gi \ __ init__.py", Zeile 27, in
    von ._gi import _API
    ImportError: DLL-Ladevorgang fehlgeschlagen: Der angegebene Prozess wurde nicht gefunden.

    Ich habe es trotzdem versucht, ich habe bereits die Illusion verloren, es zu installieren.

    1.    artus sagte

      Sie werden sehen, dass die 64-Bit-Bibliotheken immer noch einige Fehler aufweisen. Bitte installieren Sie die 32-Bit-Version von Python und GTK +, damit Sie keine Probleme haben.

      Sie sollten niemals die Illusion verlieren 🙂

  7.   Daniel sagte

    Hallo, ich arbeite mit Python + GTK3, es ist sehr gut, jetzt habe ich ein kleines Problem. Ich möchte das Symbol in diesem Fall in mein Formular (Fenster) ändern und ich kann es ändern, danke im Voraus, Grüße

  8.   jors sagte

    Veröffentlichen Sie einfache Videos zum Programmieren in gtk + 3 und einfache Tutorials

  9.   Jose sagte

    Exzellentes Tutorial. Vielen Dank für Deine Mühe. Grüße.

  10.   jkmilo1030 sagte

    Ich habe alle Schritte ausgeführt und als ich der Installation vertraute, wurde dieser Fehler angezeigt.

    Traceback (jüngste Aufforderung zuletzt):
    Datei «», Zeile 1, in
    aus gi.repository importieren Gtk
    ImportError: Kein Modul mit dem Namen 'gi'