Bitte nehmen Sie mit, ich bin ein Linux-Neuling. Ich schreibe seit mehreren Jahren GUI-Programme in REALbasic auf einem Mac. Ich versuche Python zu lernen und ich möchte GUI-Apps für Linux schreiben (hauptsächlich Ubuntu und Mint, da sie die Distributionen sind, auf die ich Zugriff habe, und sie scheinen die beliebtesten zu sein). Ich habe grundsätzlich drei Fragen:
- Gibt es signifikante Unterschiede zwischen GTK und QT?
- Ich habe mit
quickly
undGlade
auf Ubuntu gespielt, aber ich verstehe, dass sie auf GTK 2 basieren und dies nun veraltet ist. Ist das korrekt? - Gibt es All-in-One-Editoren, mit denen ich eine GUI entwerfen und dann Python-Code hinzufügen kann? (Fügen Sie beispielsweise einem Fenster im Editor eine Schaltfläche hinzu, doppelklicken Sie auf die Schaltfläche und fügen Sie dann den Python-Code hinzu, der ausgeführt werden soll, wenn die Schaltfläche gedrückt wird.)
Es tut mir leid, wenn dies wirklich blöde Fragen sind, aber ich möchte von Anfang an die richtigen Tools erlernen.
Antworten:
Ich werde versuchen, Ihre Fragen zu beantworten, ohne in verrückte Richtungen zu gehen.
Sie unterscheiden sich erheblich, obwohl sie beide Widget-Bibliotheken sind. Reguläres GTK + basiert auf C und QT auf C ++. Obwohl Bindungen für fast alle Programmiersprachen existieren.
Sie sind ziemlich korrekt in Bezug auf GTK2, obwohl es so viele GTK2-Anwendungen gibt. Ich gehe davon aus, dass GTK2 eine Weile in Gebrauch sein wird, genau wie GTK1. Wenn Druck aufkommt, ist GTK2 veraltet, und wenn Sie neu anfangen, gehen Sie zu GTK3.
Remeber GTK und QT sind nur Widget-Toolkits. Zum Beispiel ... Gnome-Anwendungen, benutze GTK und auch die Gnome-Libs. Wenn du das willst, schau dir vala an. Es wird als einfach angesehen, das vala kompiliert Source-to-Source direkt in C und verfügt über vollständige Bindungen für viele Programmiersprachen. Vielleicht möchten Sie sich auch Anjuta ansehen, stellen Sie jedoch sicher, dass Sie die neuen gtk3-Versionen haben. Anscheinend unterstützt PyGTK nur GTK2, das habe ich zuletzt überprüft. Wenn Sie alle Linux-DE-Bibliotheken vermeiden möchten, würde ich empfehlen, sich QT anzuschauen. Plain QT unterscheidet sich von KDE-Anwendungen, die KDE-Bibliotheken enthalten. QT wird als sehr plattformübergreifend angesehen, was cool ist, wenn Sie für Nicht-Nix kompilieren möchten. Wenn Sie mit QT + Python beginnen möchten, schauen Sie sich PySide (LGPL) oder PyQT (GPL) an. QT hat einige gute GUI-Builder wie qt creator und qt-designer.
quelle
GTK und Qt sind plattformübergreifende Open-Source-Toolkits für Benutzeroberflächen und Entwicklungsframeworks. Dies sind die beiden beliebtesten Frameworks für Linux, da sie Open Source sind und Entwicklern ein leistungsstarkes Toolkit zum Entwerfen grafischer Benutzeroberflächen bieten. GTK wird als Standard-Toolkit für die GNOME-, LXDE- und Xfce-Desktop-Umgebungen verwendet, während Qt für KDE verwendet wird.
Wenn Sie in C codieren, entscheiden Sie sich offensichtlich für GTK +
Wenn Sie in C ++ codieren, wählen Sie Qt, andernfalls benötigen Sie Gtkmm (einen C ++ - Wrapper über GTK +).
Wenn Sie in Python codieren, verfügen sowohl GTK + als auch Qt über Bindungen für die Sprache: Siehe PyGtk, PyQt und PySide (die von Nokia selbst gestartete).
quelle
Qt wird hauptsächlich in KDE und GTK + in GNOME verwendet. Wenn Sie also für GNOME entwickeln möchten, ziehen Sie GTK + in Betracht, da die erforderlichen Abhängigkeiten für GTK + -Bibliotheken bereits auf einem GNOME-System installiert sein sollten. Der Endbenutzer muss sie nicht installieren. Die GTK + -Entwicklung profitiert auch von einem Tool namens Glade Interface Designer . Wenn Sie möchten, können Sie damit Ihre Benutzeroberflächen erstellen.
quelle