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
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
Laden Sie PyGObject herunter
Website herunterladen: https://wiki.gnome.org/PyGObject
Wir müssen die Version für GTK + 3 herunterladen
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.
Python-Installation
Die Installation ist sehr einfach. Der Assistent führt uns durch den Vorgang. Wir lassen alle Optionen standardmäßig markiert.
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.
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.
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.
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:
Jetzt kopieren wir den Ordner gtk a C: \ Python33 \ Lib \ Site-Pakete Hier werden die Pakete von Drittanbietern für Python installiert.
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
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:
Ü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
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
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.
Google Chrome ab Version 33, gtk verlassen.
und warum die Erklärung für Windows und nicht Linux
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? 🙂
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
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.
Ja, wenn Sie ein Problem haben, hinterlassen Sie mir einen Kommentar.
Luck.
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.
Tutorial:
https://python-gtk-3-tutorial.readthedocs.org/en/latest/index.html
Caramba! Vielen Dank!
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.
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).
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.
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.
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.
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.
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. 😉
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.
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 🙂
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
Veröffentlichen Sie einfache Videos zum Programmieren in gtk + 3 und einfache Tutorials
Exzellentes Tutorial. Vielen Dank für Deine Mühe. Grüße.
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'