Как создавать нативные приложения C ++ с пользовательским интерфейсом HTML / CSS?

Можно ли разработать программу на C ++, используя HTML и CSS для пользовательского интерфейса? Я знаю о программировании с использованием Javascript с использованием контейнера Webkit, но я действительно заинтересован в разработке на C ++.

Я чувствовал любовь к C # WPF, когда разрабатывал под Windows, но теперь я перешел на Linux и не нашел хорошего инструмента для использования разметки для интерфейсов. Для этого я хотел бы смешать HTML и CSS, которые очень легки и просты в использовании, с кодом C ++, с чем-то вроде WPF.

О, еще одна вещь: я ищу разработку рабочего стола, а не веб.

55

Решение

Да, это возможно. То, что вы хотите, это веб-фреймворк C ++. Вы можете начать с просмотра CppCMS— Бесплатная высокопроизводительная среда веб-разработки (не CMS), предназначенная для быстрой разработки веб-приложений.

редактировать: После выяснения вопроса думаю Awesomium будет хорошо подходит для ваших нужд.

Вы можете достичь той же функциональности, встроив WebKit (или Gecko), но, насколько я знаю, это именно то, что делает Awesomium за кулисами.

Альтернатива librocket— пакет промежуточного программного обеспечения интерфейса C ++, предназначенный для игровых приложений. Как вы можете догадаться из описания, он хорошо подходит для игр или приложений реального времени.

29

Другие решения

Sciter это встраиваемый движок HTML / CSS с C / C ++ API. Компактный и мультиплатформенный.

И проверить Эта статья.

Sciter имеет то же самое набор функций как WPF но использует HTML / CSS вместо XAML и использует нативный API.

Особенности из коробки:

  • HTML, CSS, SVG, aPNG (анимированные PNG), спрайты изображений,
  • <plaintext> — редактор с подсветкой синтаксиса,
  • <htmlarea> — WYSIWYG HTML-редактор,
  • <frame type=pager> — предварительный просмотр и печать HTML / CSS,
  • анимации,
  • HTTP-клиент, REST / JSON-клиент, WebSocket’s, DataSockets,
  • и т.п.

То же приложение с Sciter UI, работающее на Windows, MacOS и Linux из одних и тех же источников:

введите описание изображения здесь

Отказ от ответственности: я автор Sciter Engine.

25

Ты можешь использовать Chromium Embedded Framework встроить контент HTML5 в ваше приложение.
Вы получите всю мощь и скорость Chromium, а также сможете создавать приложения с графическим интерфейсом так же, как вы разрабатываете веб-приложения.

6

Я думаю электрон было бы хорошим дополнением к другим ответам.

Он использует NodeJS для запуска окна Webkit. Сам по себе Electron — это только html / css / js, но вы можете использовать любой Node-модуль в вашем приложении Electron, включая собственный, скомпилированный код C ++. Возможный модуль для встраивания вашего кода на C ++ — это node-gyp.

Имейте в виду, однако, что этот рабочий процесс может включать немного больше JS, чем было бы с другими ответами.

Мой любимый текстовый редактор, Атом, было сделано с электроном.

6
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector