2009-07-22 25 views
2

Je veux écrire un GUI à une application qui est maintenant CLI qui doit "bien paraître" à la fois dans KDE et Gnome DE, en tirant un avantage optimal des paramètres d'un utilisateur pour l'apparence.Gui pour KDE et Gnome

Si je sélectionne Qt ou GTK +, serai-je capable de le faire?

Est-ce qu'ils s'intègrent bien avec les deux DE? Ou un utilisateur de KDE a-t-il besoin de bibliothèques gnome et vice versa pour les exécuter?

Mon langage de développement sera C++

Répondre

1

Krish a raison!

Si vous souhaitez créer une application multiplateforme, utilisez une bibliothèque telle que wxWidgets.

Si vous décidez d'utiliser Qt par exemple, les utilisateurs de Gnome téléchargeront des bibliothèques et cela fonctionnera correctement. C'est transparent quand la distribution a un gestionnaire de paquets mais plus difficile si ce n'est pas le cas.

2

Vous pouvez compiler et lier à Qt de manière statique (je l'ai vu sur Windows, je ne sais pas comment cela fonctionne sur Linux). Les applications Qt peuvent sembler natives sur l'environnement de bureau GNOME grâce à l'utilisation de qgtkstyle. WxWidgets utilise GTK +, si vous voulez qu'il soit joli sur KDE, vous devez avoir un thème GTK qui utilise Qt pour le rendu comme qgtkstyle est pour GNOME. qgtkstyle est incorporé dans Qt alors que l'autre option provient d'un tiers.

2

J'ai trouvé que les applications Gtk + se rapprochent de KDE plus que les applications Qt de Gnome, mais pas suffisamment pour être pertinentes. Les deux options ont l'apparence et l'impression d'appartenir, à condition que les bibliothèques soient disponibles sur le système (plus courantes que vous pourriez penser) ou qu'elles soient liées statiquement (pas sûr que cela soit autorisé avec Qt) comme mentionné ci-dessus. En second lieu, wxWidgets utilisera toujours Gtk + dans KDE, nécessitant le chargement des mêmes bibliothèques comme si vous écriviez l'application strictement en utilisant Gtk + en plus de wxWidgets. C'est vraiment un choix fantastique, car il est facile à utiliser et fonctionne bien dans de nombreux environnements. Cela devrait vous donner une idée de la façon dont les applications se tourneront entre les environnements de bureau:

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

Je pense que ce qui est plus important est ce qui conviendra mieux à votre style de codage et de l'application. Qt et Gtk + peuvent être très différents à bien des égards.