Welches GUI-Toolkit ?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
asdman3000
User
Beiträge: 17
Registriert: Donnerstag 1. April 2010, 15:05

Hallo,

nach längerer Python-Pause möchte ich mal wieder ein kleines Programm schreiben, einen simplen MP3-Player. Hatte auch schon erste Erfolge mit Pygame für die MP3-Wiedergabe und Tkinter fürs GUI, aber speziell beim GUI hab ich einige Ansprüche, wodurch sich mir die Frage stellt ob Tkinter das Richtige ist. Der Player sollte sozusagen einen "Skin" haben, also alle Widgets und das Fenster nicht mehr standardmäßig aussehen. Dazu wär auch Transparenz für runde Buttons oder zum Beispiel auch abgerundete Ecken vom Frame/Fenster gut. Bei welchem GUI-Toolkit lässt sich das am besten machen? Bei Tkinter bin ich zum Beispiel bei Slidern mit verändertem Aussehen an Grenzen gekommen. Wäre auch an einer Übersicht über die Vor- und Nachteile der verschiedenen GUI-Toolkits (Tkinter, wxPython, ...) interessiert, was ich bisher gelesen hab hat mir bei der Wahl nicht geholfen, eher verwirrt.

Pythonversion: 2.6 (wegen Blender 2.49b), OS: Win 7 64bit

Danke im Voraus,

asdman3000
BlackJack

@asdman3000: Wenn Du Pygame sowieso schon als Abhängigkeit hast, könntest Du die GUI auch damit selber implementieren. Zumindest innerhalb des Screen-Surface kannst Du da ja alles machen was Dir so einfällt. Nachteil: Du musst das natürlich auch alles selber implementieren. Also zum Beispiel Buttons und Slider.

Ansonsten wirst Du bei der Frage nach GUI-Toolkits hier wahrscheinlich genau so viele verschiedene Meinungen und Vorschläge hören, wie Du auch schon im Netz gefunden hast. Mein Rat wäre einfach alle auszuprobieren und einen kleinen Prototyp mit jeder zu implementieren um ein Gefühl dafür zu bekommen, was Dir am meisten zusagt.
lunar

@asdman3000: Die Frage nach dem besten GUI-Toolkit ist eine Glaubensfrage, insofern wirst Du keine eindeutige Antwort hören. Das nachstehende ist nur meine persönliche Meinung.

Prinzipiell eignen sich alle drei großen Toolkits Qt, Gtk und wxWidgets. Ich würde Dir unter Deinen Voraussetzungen zu Qt in Form von PySide raten. Allgemein bietet dieses Toolkit viele verschiedene Steuerelemente und integriert sich hervorragend in Windows. Zudem gibt es mit Phonon bereits ein einfach zu nutzendes Modul für Multimedia (e.g. Abspielen von Videos und Musik), und mit QGraphicsView und dem darauf aufbauenden QML ein gutes Framework für 2D-Grafiken und 2D-Spiele, inklusive Animationen.

Im direkten Vergleich mit wxWidgets hat Qt die einfachere und modernere API, mehr Steuerelemente und die bessere Multimedia-Unterstützung (wxWidgets hat gar keine). Von Gtk hebt es sich durch die wesentlich einfachere Installation unter Windows ab. Während Gtk mehrere Installationsdateien benötigt, insbesondere wenn man noch Multimedia in Form von gstreamer nutzen möchte, gibt es für PySide fertige Installer, die alle für die jeweilige Python-Version nötigen Bibliotheken installieren.
asdman3000
User
Beiträge: 17
Registriert: Donnerstag 1. April 2010, 15:05

Danke für die Antworten!

Ich hab mir PySide runtergeladen und online ein paar Beispiele angeschaut und denke, dass ich es damit versuche, scheint ja sehr viele Möglichkeiten zu bieten.

Thx,
asdman3000
Antworten