Хорошая (и бесплатная) альтернатива VCL GUI - PullRequest
3 голосов
/ 03 мая 2009

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

Итак, основные требования:

  1. Бесплатно для коммерческих проектов с закрытым исходным кодом
  2. Управление Windows GUI. Другие компоненты (ссылки на БД и прочее) не требуются
  3. Быть расширяемым (чтобы можно было писать собственные компоненты GUI на основе существующих)
  4. Будьте STL-дружественными.

Пожалуйста, оставьте свои предложения, с за и против, если возможно.

EDIT

Спасибо за все ответы. Я решил использовать Qt, поскольку у него есть и другие полезные функции, такие как пакет перевода Qt Linguist.

Ответы [ 6 ]

6 голосов
/ 03 мая 2009

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

5 голосов
/ 03 мая 2009

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

3 голосов
/ 03 мая 2009

Можно использовать QT или wxwidgets .

2 голосов
/ 03 мая 2009

Как указано Мги

wxWidgets - отличная библиотека. Он имеет много привязок (.net, lua - мой любимый и т. Д.) И имеет графический редактор. Хотя он генерирует довольно неясный код, вы можете найти просто разделить его функциональность.

1 голос
/ 03 мая 2009

Возможно, вы захотите посмотреть Qt Project

1 голос
/ 03 мая 2009

Вам может понадобиться бесплатная версия BCB: Turbo C ++ Explorer или попробуйте .NET CLR / WinForms.

WxWidgets - это просто библиотека GUI. Qt является платформой, но все еще далека от инфраструктуры RAD, такой как VCL. Единственный конкурент - MFC, и, к сожалению, он не бесплатный. С некоторой точки зрения .NET + CLR является преемником VCL - ну, может быть, вы также можете попробовать это - если вы не возражаете, для этого требуется огромный .NET Framework.

Если вам просто нужно «хорошее и бесплатное решение» и вы не против придерживаться VCL, используйте TC ++ Exp.

...