2009-08-16 18 views
19

Quiero crear aplicaciones de GUI con C++ en Windows. He descargado Qt, y funciona bien, pero tiene muchas cosas y tantos archivos de encabezado que realmente no uso. Es un buen marco, pero tiene más que solo GUI.Lightweight C++ Gui Library

¿Hay alguna biblioteca de GUI más ligera para Windows C++ que sea "solo GUI"?

Respuesta

15

FLTK, si usted es serio sobre el peso ligero.

http://www.fltk.org/

edición:
Comentario de la página web:

FLTK está diseñado para ser lo suficientemente pequeño y modular para ser enlazado estáticamente, pero funciona bien como una biblioteca compartida. FLTK también incluye un excelente generador de interfaz de usuario llamado FLUID que se puede usar para crear aplicaciones en minutos.

Voy a agregar que es maduro y estable, también.

+3

Es realmente bueno, pero también un poco feo. ¿Hay algo así con * native * L & F? – demonkoryu

+1

Nada que yo sepa es liviano. wxWidgets envuelve los widgets nativos (en su mayoría, siempre que sea posible) mientras permanece cruzada la plataforma. Sin embargo, definitivamente es una plataforma más grande y más pesada. – Shaun

+0

https://github.com/vurtun/nuklear. Está bien, este no estaba aquí. :) –

2
+6

¿Qué es liviano sobre wxWidgets ??? – sbi

+11

hey, en comparación con Qt, todo es liviano. –

+1

Ah, bien, todavía no he visto a Qt. Encontré wxWidgets bastante pesado. – sbi

5

JUCE es bastante ligero, puede ser tan simple como uno .cpp & un archivo .h. (Mira el JUCE amalgamado) Sin embargo, no parece una aplicación de Windows estándar. Por otro lado, es multiplataforma.

+8

No se puede utilizar libremente en proyectos comerciales. –

0

prueba GTK con Glade3.

5

Incluso si wxWidgets se denomina aquí ya:

wxWidgets!

Es un gran y valioso Framwork (API, Class Library, como se llame).

PERO: Puede dividir la funcionalidad de esta biblioteca en muchas partes pequeñas (base, core, gui, internet, xml) y usarlas, cuando sea necesario.

Si realmente desea hacer aplicaciones GOOD GUI, debe usar una BUENA API. wxWidgets es absolutamente gratuito (QT no lo es), solo necesita una pequeña sobrecarga en formato binario, enlazado como dll o o-file ¿se trata de 2Megs, pero tiene que ofrecer todo lo que necesita para programar grandes aplicaciones ...

y wxWidgets es mucho más ligero que el QT ... y aún mejor ... :)

Inténtelo ...

+3

¿Cómo es que Qt no es "absolutamente gratis"? No estoy llamando a wxWidgets, pero no creo que esto sea justo para Qt. – Grault

+1

Supongo que se está refiriendo al hecho de que Qt solo es gratis si está dispuesto a cumplir con sus licencias L/GPL. Si no eres o no puedes, entonces tienes que pedir una licencia comercial. wxWidgets está LGPL con una exención de enlace estático, lo que significa que es de uso gratuito independientemente de la licencia de la aplicación, siempre que la fuente no haya cambiado. – 0x1mason

1

biblioteca Microsoft Foundation Class (MFC)

que Considerando están buscando una SOLUCIÓN DE SOLO WINDOWS, (y que wxWidgets ha sido votado en este hilo) es posible que desee negociar algo de ligereza y pago y envío MFC.
En cuanto a Windows se refiere, MFC y wxWidgets parecen competir cuello & cuello, pero en general, el primero es más ligero que el último.

algunas ventajas: -

  • apoyo MSVC MFC RAD. Visual Studio podría decirse que ofrece el mejor "RAD herramienta & GUI lib" combo. El único otro "dúo dinámico" que se acerca al es el de QtCreator & QT. wxSmith no es totalmente compatible con todos los componentes
  • wxWidgets, pero sigue mejorando. Conjunto muy muy rico de componentes comerciales de GUI.
  • Gratis (pero patentado).
  • Muy bueno cuando se trata de controles de datos.

algunos inconvenientes: -

De todas formas, aparte de MFC, creo que el FOX-Toolkit También merece una mención, pero al igual que FLTK, el principal inconveniente es la falta de IDE decente y herramientas RAD, en comparación con, por ejemplo, QT o wxWidgets

+0

Es una pesadilla trabajar con MFC. –

+0

@the_drow ¿Leyó la publicación completa antes de comentar (o rechazar)? – moje

+0

Sí, lo hice. Con las características establecidas, es posible que tenga razón, pero el MFC simplemente no se puede mantener y no se puede leer. No lo recomendaría a nadie por ningún motivo? –

1

IUP es el más pequeño que conozco, tanto en términos de curva de aprendizaje, tamaño DLL y cuenta con

4

CEGUI es una potente biblioteca de interfaz gráfica de usuario, pero no estoy seguro (ya que no aclaró) lo que quiere decir con ligero. También contiene muchos encabezados, pero todos están relacionados con la GUI o su representación. En mi computadora, la versión actual incorporada en el modo de lanzamiento VS2010 predeterminado toma aproximadamente 3 MB en total para los dlls. Por supuesto, hay activos que también ocupan espacio, pero claramente estos pueden variar según sus necesidades. Utiliza archivos XML y de imagen en los activos, las imágenes ocupan el mayor espacio. Requiere un montón de dlls según sus requisitos (png, jpeg, xml), pero todos son bastante pequeños en Release. Así que a menos que seas irracionalmente pedante sobre tener demasiadas DLL en uso, esto no debería ser un problema.

Está escrito en C++ (0.7-1.0 se basará en el estándar C99, 2.0+ estará en C++ 11 estándar) y admite enlaces dinámicos y estáticos. La vinculación dinámica es el tipo admitido en Windows. No se recomienda el enlace estático en Windows para CEGUI.

Aquí un breve resumen de características:

  • moderna (utiliza STL, XML para sus archivos de activos, e internamente soporta el estándar C99 para una máxima compatibilidad, después de la versión 1.0 lo hará usar C++ 11 en la rama de desarrollo). También tiene soporte para caracteres Unicode y todo tipo de idiomas (como se puede ver en las muestras).

  • ofrece los siguientes widgets de fuera de la caja: campos de texto (desplazable), editboxes, editboxes de varias líneas, hilanderos, casillas de verificación, botones, radio-botones, ventanas con pestañas, barras de progreso, cristales desplazables, de los deslizadores , desplegables-menús (ComboBoxes), barras de menús, esquemas de contenedores (vertical/horizontal) y más

  • publicado bajo licencia Open Source MIT, una de las licencias que le ofrece la mayor libertad, sólo se necesitará distribuya el archivo de licencia con la aplicación y eso es todo

  • Los diseños se pueden crear y editar fácilmente usando un editor WYSIWYG escrito en Python. Se llama CEED y también está disponible gratuitamente. Ha pasado por muchas pruebas y es adecuado para ser utilizado para producción. Se ha publicado una versión estable y nuevas características están en desarrollo para el futuro. Un editor de conjunto de imágenes también está disponible en la misma aplicación.

  • Como se ha indicado, este es gratis para uso comercial. La única obligación que tiene es distribuir el archivo de licencia.

  • CEGUI es apto para multiplataforma uso. Es compatible oficialmente con Windows, Linux, Mac OS. También se ha usado en iOS y Android. Android es compatible con la rama de desarrollo.

que fue diseñado originalmente como una biblioteca de interfaz gráfica de usuario para los juegos, pero también es perfecto para el uso en aplicaciones científicas, aplicaciones de renderización, visualización. Las aplicaciones de escritorio se pueden hacer también. Un aspecto simple similar a Windows está disponible en los activos predeterminados.

Ha existido por más de 10 años, tiene una comunidad activa y es una biblioteca robusta, rica en funciones y extensible.