2009-07-22 16 views
2

Ich möchte eine GUI zu einer Anwendung schreiben, die jetzt CLI ist, die sowohl in KDE- als auch Gnome-DEs "gut aussehen muss", wobei optimale Benutzereinstellungen für das Aussehen verwendet werden.Gui für KDE und Gnome

Wenn ich Qt oder GTK + auswähle, kann ich das tun?

Passen sie gut zu beiden DEs? Oder benötigt ein KDE-Benutzer gnome libs und umgekehrt, um sie auszuführen?

Meine Entwicklungssprache der Wahl wird C++ sein

Antwort

1

Krish hat Recht! Wenn Sie eine plattformübergreifende Anwendung erstellen möchten, verwenden Sie eine Bibliothek wie wxWidgets.

Wenn Sie sich zum Beispiel dafür entscheiden, Qt zu benutzen, werden Benutzer, die auf Gnome laufen, einige Bibliotheken herunterladen und es wird gut funktionieren. Dies ist transparent, wenn die Distribution einen Paketmanager hat, aber schwieriger, wenn dies nicht der Fall ist.

2

Sie können Qt statisch kompilieren und mit Qt verknüpfen (ich habe das unter Windows gesehen, weiß nicht, wie es unter Linux funktioniert). Qt-Anwendungen können unter Verwendung von qgtkstyle in der GNOME-Desktopumgebung nativ aussehen.

wxWidgets verwendet GTK +, wenn Sie wollen, dass es auf KDE gut aussieht, benötigen Sie ein GTK-Thema, das Qt zum Rendern verwendet, wie qgtkstyle für GNOME. qgtkstyle ist in Qt integriert, während die andere Option von einer dritten Partei stammt.

2

Ich habe festgestellt, dass Gtk + -Apps in KDE besser aussehen als Qt-Apps in Gnome, aber nicht genug, um eine Rolle zu spielen. Beide Optionen sehen so aus, als ob sie dazugehören, vorausgesetzt, die Bibliotheken sind auf dem System verfügbar (häufiger, als Sie vielleicht denken), oder sie sind statisch verknüpft (nicht sicher, ob dies mit Qt erlaubt ist), wie oben erwähnt.

Zweitens, wxWidgets werden immer noch Gtk + in KDE verwenden, so dass die gleichen Bibliotheken geladen werden müssen, als ob Sie die Anwendung strikt mit Gtk + zusätzlich zu wxWidgets geschrieben hätten. Es ist wirklich eine fantastische Wahl, da es einfach zu bedienen ist und in vielen Umgebungen gut funktioniert. Dies sollte Ihnen eine Vorstellung davon, wie Anwendungen zwischen Desktop-Umgebungen aussehen:

http://www.wxwidgets.org/about/screensh.htm

Ich denke, was noch wichtiger ist, ist, was besser Ihre Codierung Stil und Anwendung passt. Qt und Gtk + können in vielerlei Hinsicht sehr unterschiedlich sein.