58 votes

Quelles sont les "meilleures" cross-platform C++ UI boîtes à outils d'aujourd'hui?

Je suis en train d'écrire un système de haute performance dans le portable c++ moderne. Beaucoup de STL et Boost. J'aimerais commencer la construction de certains avant prend fin à ce système. Normalement j'opterais pour une utilisation non c++ solution à une INTERFACE utilisateur, mais c'est censé être une très haute performance de l'INTERFACE utilisateur, le sens de latence, pour répondre à des messages, volume élevé de messages à trier et afficher, etc. J'ai écrit beaucoup de temps réel de l'Isu .NET, ils accomplir le travail assez bien. Cependant, je veux vraiment faire de la croix-plate-forme avec pas de trucs (monoculture) et ont juste travailler. Quelles sont les meilleures options pour y parvenir?

EDIT:

Laissez-moi jeter dans une autre que je viens de me rappeler, JUCE. Gratuit pour un usage non commercial, et de la croix-plate-forme. Seul problème, c'est que le développement est contrôlé par une personne, mais le code source est disponible.

JUCE

42voto

Bien que je ne suis pas sûr de ce que vous entendez par "trucs et Astuces", je ne peux que vous donner ces liens. Si c'est "mieux" est à vous de décider.

  • wxWidgets. Gratuit pour un usage commercial. Vieux, mais compatible API design (pas d'exceptions, pas de modèles, pas de RTTI, pas d'utilisation de la STL). Il utilise les objets natifs.
  • Qt. Cadre Moderne. Prise en charge de SQL, pour l'embarqué ECMA script. Comprend un intégré le Webbrowser. Les Widgets sont de CSS compatible et peut être mis sur transformable en toile. Incroyable boîte à outils. Il est aussi très rapide. Pas gratuit pour un usage commercial, mais gratuit pour les projets Open-Source.

    • Edit: le 14. Jan 2009, Nokia a annoncé à mettre Qt dans la LGPL license Qt disponible pour l'utilisation commerciale - gratuit.
  • Z gtkmm. C++ liaison à la célèbre boîte à outils gtk+ utilisé comme la base de GNOME. Gratuit pour les commerciaux (mais ne pouvez pas lier statiquement). Moderne API C++. GUI Toolkit. Comme Qt, il attire les widgets lui-même. Cela donne d'assez pauvre apparence sur Windows (Qt attire les widgets assez bien). Je n'ai pas testé, donc je ne peux pas vous dire la performance.

Il y a plus. Mais je ne connais que ces raisonnable bien de vous en parler.

20voto

Paul Betts Points 41354

Qt est de loin la plus complète, bien pris en charge, cross-platform C++ GUI cadre en existence aujourd'hui.

13voto

lyxera Points 975

J'ai récemment étudié presque toutes les boîtes à outils mentionnés ci-dessus. Je dirais que Qt est de loin le plus conseillé trousse d'outils à utiliser. Je dis "souhaitable", mais pas "mieux" parce que vraiment pas de trousse d'outils est parfait, en général il n'y a pas "parfait" des solutions à la croix-plate-forme de problèmes.

Voici quelques-uns des avantages et des inconvénients de Qt 4.5 (aka Qt 2009.01), disponible sous licence LGPL à partir de janvier 2009

avantages:

  1. supporte un grand nombre de plates-formes, le les plus importants d'entre eux (je suppose) sont Windows, Mac OS X et Linux.
  2. regarde natif (parfois vraiment en utilisant le natif de trucs en vertu de la capot) sur Windows, Mac OS X et Linux. Il fonctionne vraiment sympa sur de windows. Le cacao est pris en charge sur Mac OS X, ce qui est une grosse affaire. Sur Mac OS X, il est possible de faire la interface air presque impossible à distinguer de natif de Cacao des applications.
  3. il est livré avec un vraiment très bon, de la croix-plate-forme de construction du système, qui peut économiser des charges de temps
  4. c'est une suite complète, comme certains le disent, un cadre d'application, pas juste un GUI cadre. par exemple, la base de données et réseau. il vous donne même un webkit contrôles.
  5. beaucoup de documentation. l'un des meilleurs jeux de la documentation que vous pouvez trouver sur GUI cadres. c'est encore mieux que MSDN et apple le développement de références.
  6. toutes les autres communes de la croix-plate-forme de trucs

inconvénients:

  1. c'est gros. le programme d'installation n'est pas si anodin. l'apprentissage de prendre un peu de temps. occupe beaucoup d'espace disque.

7voto

Nemanja Trifunovic Points 17239

Vous trouverez de nombreux cross-platform GUI bibliothèques en C++, mais autant que je sache, Qt est le seul vrai choix.

7voto

Khnle - Kevin Le Points 3415

Je crois Ultimate++ (vous pouvez facilement faire une recherche sur Google, basé sur le nom Ultimate++) est très bonne. Il prend avantage du C++ modèles lourdement, mais le problème est qu'il ne fonctionne que sur et produit des exécutables pour Windows et Linux et pas sous Mac OS. Il a son IDE et son IDE est écrit à l'aide Ultimate++ lui-même (l'oeuf et la poule problème). L'avantage de l'utilisation de U++.NET et Mono est la résultante des applications ont une plus petite empreinte pas de framework doit être installé pour que les applications à exécuter.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X