Python

Python-Desktop-Grafik-Frameworks

Python-Desktop-Grafik-Frameworks
Ihre ersten Lektionen in Python sind auf Texteingabe und -eingabe ausgerichtet. Wenn Sie die ersten Programme, die Sie vom Terminal aus ausführen, hinter sich haben, möchten Sie eine grafische Oberfläche für Ihr Wunder an Computerkenntnissen erstellen. Wenn Sie im Internet suchen, finden Sie eine lange Liste von Tools, aber die Frameworks für den Desktop sind möglicherweise schwer zu finden. Hier finden Sie eine Liste mit einer Beschreibung des Wertes, den sie bringen.

Welche Frameworks sind am häufigsten??

Wenn Sie die Python-Dokumentation für grafische Benutzeroberflächen nachschlagen, finden Sie TkInter. Das Paket ist Teil der Standard-Python-Installation. Sie können dies für die einfachsten Anwendungen verwenden. Sie können auch Frameworks suchen, die etwas anderes implementieren oder Dinge auf TkInter legen.

Einige der großen, oder besser gesagt, viel verwendeten Systeme für Linux sind QT und wxWidgets. Diese sind sowohl unter Linux, Unix-ähnlichen Systemen, Mac OS X als auch Windows so verbreitet, dass Sie sie kennen müssen, wenn Sie GUI-Programme erstellen.

QT ist einer der Standards für den Desktop. Es enthält auch Klassen, um die meisten Funktionen des Computers zu handhaben. Dazu gehören Sockets, Threads, Unicode und ein eigener Webbrowser. PyQt hat Bindungen zu allen Teilen dieses Frameworks.

wxWidgets Hat eine sehr große API mit vielen Widgets und Funktionen. Dazu gehören die gleichen wie QT, da es sich um konkurrierende Technologien handelt. Es gibt Unterschiede, aber der wichtigste Teil ist, dass Sie, wenn Sie etwas Großes machen möchten, beides im Auge behalten müssen. Vielleicht möchten Sie wechseln, wenn und wenn Ihr Projekt wächst.

Python 2 wird nicht mehr gewartet!!

Bevor Sie sich entscheiden, stellen Sie sicher, dass Sie Python-Versionen höher als 3 . unterstützen.0. Python-Version 2.0 ist seit Anfang 2020 außer Betrieb.

Plattformübergreifend oder nur Linux?

In diesem Artikel sehen Sie einige Beispiele, die alle von Linux unterstützt werden und die Bereitstellung auf Linux unterstützen. Überlegen Sie, bevor Sie beginnen, welche Unterstützung Sie benötigen. sowohl Entwicklungs- als auch Bereitstellungsunterstützung für andere Plattformen? Welche?

Beginnen wir zunächst mit Python-Frameworks, die klein und einfach zu starten sind, die unten aufgeführt sind.

guizero - klein, gemacht für Anfänger.

Verwendet Standard-TkInter für die Komponenten. Es hat Schaltflächen, Kontrollkästchen und viele andere Arten von Widgets. Natürlich können Sie Text abrufen und die Ergebnisse anzeigen, Bilder anzeigen und Anwendungen in den erstellten Fenstern ausführen.

appJar - lehrreich

appJar soll lehrreich sein, deshalb haben die Designer die Installation kinderleicht gemacht. Der einfachste Weg; Laden Sie das Sitepackages-Verzeichnis auf Ihrem Computer herunter und entpacken Sie es. Es ist jedoch auch auf PyPI verfügbar. Es hat kaum mehr Funktionen als Guizero.

Gooey - Befehlszeilen-GUI!

Ist für Sie konzipiert, um Ihre Befehlszeilentools auf eine GUI zu übertragen. Es verfügt über Symbolleisten, Schieberegler und Schaltflächen, richtet sich wie die anderen nur an diejenigen unter Ihnen, die bereits ein Skript geschrieben haben und dafür eine GUI erstellen möchten.

Okay, schauen wir uns nun einige weitere Frameworks an, die mit etwas mehr Lernkurve größer sind, aber alle diese Frameworks unten haben mehr Funktionen.

Kivy - Die größere Wahl

Dies ist ein größerer Rahmen, der darauf abzielt, größere Projekte zu unterstützen. Sie können dies für die meisten Anwendungen verwenden, tatsächlich werden sie von vielen Unternehmen mit all ihren Fähigkeiten unterstützt.

Zucker - Auf Bildung ausgerichtet

Dies ist ein Rahmen für Bildungsanwendungen. Sie können es verwenden, wenn Sie Bildungsanwendungen mit auffälligen Grafiken schreiben möchten. Es ist in vielen Sprachen geschrieben, obwohl Python einen großen Teil davon ausmacht. Der Einstieg ist nicht ganz so einfach, aber Sie haben eine Vielzahl von Möglichkeiten zur Verfügung.

IDE-Unterstützung

Wenn Sie beginnen, verwenden Sie möglicherweise bereits eine IDE. Müssen Sie also zu einem anderen wechseln??

Wenn Sie Ihre eigenen Anwendungen erstellen möchten, können Sie dies in einer webbasierten Oberfläche ausprobieren. Ein REPL, wenn Sie so wollen. Um Sugar-Aktivitäten zu erstellen, müssen Sie PyGTK verstehen. Wenn Sie darin bereits programmieren, können Sie wie gewohnt fortfahren. Fügen Sie einfach das Sugar Toolkit hinzu und entwickeln Sie wie gewohnt.

Das gilt auch für die anderen. guizero und appJar benötigen zum Beispiel nur die Bibliothek, damit Sie sie importieren können. Gooey erfordert eine Pip-Installation. Mit einer virtuellen Umgebung ist es ganz einfach. Verwenden Sie einfach PyCharm oder Ihre bevorzugte Python-IDE.

Kivy hat eine einfache Anleitung zum Einrichten für PyCharm, es gibt auch Lösungen für Visual Studio, Eclipse und eric6. Am Ende ist es einfach, die Bibliothek einfach hinzuzufügen und wie gewohnt fortzufahren.

Fazit

Wenn Sie mit der Erstellung grafischer Benutzeroberflächen mit Python beginnen, haben Sie viele Möglichkeiten. Einige dieser Optionen sind groß und kompliziert. Wenn Sie jedoch mit etwas Kleinem beginnen möchten oder nur kleine Routinen implementieren möchten, können Sie die oben genannten kleinen verwenden one. Mit ein wenig Planung und einem klaren Ziel sind Sie im Handumdrehen startklar. Selbst die kleinen Frameworks bauen normalerweise auf den Standard-Toolkits auf, die plattformunabhängig sind. Dies macht die Wahl eher nach Geschmack als nach Werkzeugfähigkeit.

Vulkan für Linux-Benutzer
Mit jeder neuen Grafikkartengeneration stoßen Spieleentwickler an die Grenzen der grafischen Wiedergabetreue und kommen dem Fotorealismus einen Schrit...
OpenTTD vs. Simutrans
Das Erstellen einer eigenen Transportsimulation kann Spaß machen, entspannend und äußerst verlockend sein. Deshalb sollten Sie so viele Spiele wie mög...
OpenTTD-Tutorial
OpenTTD ist eines der beliebtesten Wirtschaftssimulationsspiele auf dem Markt. In diesem Spiel musst du ein wunderbares Transportunternehmen aufbauen....