[c++] Легкая C ++ Gui Library



3 Answers

JUCE довольно легкий, он может быть таким же простым, как один .cpp и один файл .h. (Посмотрите на объединенный JUCE) Однако это не похоже на стандартное приложение Windows. С другой стороны, это кросс-платформа.

Question

Я хочу создать графические приложения с C ++ в Windows. Я загрузил Qt, и он работает хорошо, но в нем много материала и столько файлов заголовков, которые я действительно не использую. Это хорошая структура, но она имеет больше, чем просто графический интерфейс.

Существуют ли более легкие библиотеки GUI для Windows C ++, которые являются «просто графическим интерфейсом»?







Библиотека классов Microsoft Foundation (MFC)

Учитывая, что вы ищете ТОЛЬКО РЕШЕНИЕ WINDOWS (и что wxWidgets проголосовали за эту тему), вы можете обменять небольшую легковесную и контрольную MFC.
Что касается Windows , MFC и wxWidgets, похоже, конкурируют с шеей и шеей, но в целом, первый светлее, чем последний.

Некоторые PROS: -

  • Поддержка MSVC MFC RAD. Visual Studio, возможно, обеспечивает лучшую комбинацию «RAD tool & GUI lib». Единственным другим «динамическим дуэтом», который близок, является QtCreator & QT. wxSmith не полностью поддерживает все
  • wxWidgets компоненты, но он продолжает улучшаться. Очень очень богатый набор коммерческих графических компонентов.
  • Свободный (но проприетарный).
  • Очень приятно, когда дело доходит до управления данными.

Некоторые CONS: -

В любом случае, приложение из MFC, я думаю, FOX-Toolkit также заслуживает упоминания, но, как и FLTK, основным недостатком является отсутствие достойных IDE и RAD-инструментов по сравнению с, скажем, QT или wxWidgets




CEGUI - мощная библиотека графического интерфейса, но я не уверен (поскольку вы не уточнили), что вы подразумеваете под легким весом. Он содержит много заголовков, но все они связаны с графическим интерфейсом или его рендерингом. На моем компьютере текущая версия Release, построенная по умолчанию для версии VS2010, занимает около 3 МБ для DLL. Разумеется, активы также занимают место, но ясно, что они могут варьироваться в зависимости от ваших потребностей. Он использует XML и файлы изображений в активах, изображения занимают больше всего места. Для этого требуется набор dll в зависимости от ваших требований (png, jpeg, xml parsing dlls), но все они довольно малы в Release. Поэтому, если вы не иррационально педантичны относительно использования слишком большого количества DLL, это не должно быть проблемой.

Он написан на C ++ (0.7-1.0 будет основан на стандарте C99, 2.0+ будет в стандарте C ++ 11) и поддерживает динамическое и статическое связывание. Динамическое связывание - это поддерживаемый тип в Windows. Статическая связь в Windows не рекомендуется для CEGUI.

Здесь краткое описание функций:

  • Modern (использует STL , XML для своих файлов активов и внутренне поддерживает стандарт C99 для максимальной совместимости, после выпуска 1.0 он будет использовать C ++ 11 в ветке разработки). Он также поддерживает символы юникода и всевозможные языки (как можно видеть в примерах).

  • Предлагаются следующие виджеты : текстовые поля (прокручиваемые), поля редактирования, многострочные правки, прядильщики, флажки, кнопки, переключатели, окна с вкладками, индикаторы выполнения, прокручиваемые панели, слайдеры, выпадающие меню (comboboxes) , строки меню, контейнеры макетов (вертикальные / горизонтальные) и многое другое

  • Опубликованный в рамках лицензии MIT Open Source , одной из лицензий, предоставляющей вам наибольшую свободу, вам нужно будет только распространять файл лицензии с приложением, и это все

  • Макеты можно легко создавать и редактировать с помощью редактора WYSIWYG, написанного на Python. Он называется CEED и также свободно доступен. Он прошел множество испытаний и подходит для производства. Опубликован стабильный релиз, а новые функции находятся в разработке на будущее. Редактор изображений также доступен в одном приложении.

  • Как указано, это бесплатно для коммерческого использования . Единственное обязательство, которое у вас есть, - это распространять файл лицензии.

  • CEGUI подходит для кросс-платформенного использования. Он официально поддерживает Windows, Linux, Mac OS . Он также использовался на iOS и Android. Android поддерживается в отрасли разработки.

Он был первоначально разработан как графическая библиотека для игр, но также идеально подходит для использования в научных приложениях, рендеринга приложений, визуализации. Настольные приложения также могут быть выполнены. Простой Windows-подобный скин доступен в активах по умолчанию.

Он существует уже более 10 лет, имеет активное сообщество и является надежной, многофункциональной и расширяемой библиотекой.




Related