Можно ли разработать программу на C ++, используя HTML и CSS для пользовательского интерфейса? Я знаю о программировании с использованием Javascript с использованием контейнера Webkit, но я действительно заинтересован в разработке на C ++.
Я чувствовал любовь к C # WPF, когда разрабатывал под Windows, но теперь я перешел на Linux и не нашел хорошего инструмента для использования разметки для интерфейсов. Для этого я хотел бы смешать HTML и CSS, которые очень легки и просты в использовании, с кодом C ++, с чем-то вроде WPF.
О, еще одна вещь: я ищу разработку рабочего стола, а не веб.
Да, это возможно. То, что вы хотите, это веб-фреймворк C ++. Вы можете начать с просмотра CppCMS— Бесплатная высокопроизводительная среда веб-разработки (не CMS), предназначенная для быстрой разработки веб-приложений.
редактировать: После выяснения вопроса думаю Awesomium будет хорошо подходит для ваших нужд.
Вы можете достичь той же функциональности, встроив WebKit (или Gecko), но, насколько я знаю, это именно то, что делает Awesomium за кулисами.
Альтернатива librocket— пакет промежуточного программного обеспечения интерфейса C ++, предназначенный для игровых приложений. Как вы можете догадаться из описания, он хорошо подходит для игр или приложений реального времени.
Sciter это встраиваемый движок HTML / CSS с C / C ++ API. Компактный и мультиплатформенный.
И проверить Эта статья.
Sciter имеет то же самое набор функций как WPF но использует HTML / CSS вместо XAML и использует нативный API.
Особенности из коробки:
<plaintext>
— редактор с подсветкой синтаксиса,<htmlarea>
— WYSIWYG HTML-редактор,<frame type=pager>
— предварительный просмотр и печать HTML / CSS,То же приложение с Sciter UI, работающее на Windows, MacOS и Linux из одних и тех же источников:
Отказ от ответственности: я автор Sciter Engine.
Ты можешь использовать Chromium Embedded Framework встроить контент HTML5 в ваше приложение.
Вы получите всю мощь и скорость Chromium, а также сможете создавать приложения с графическим интерфейсом так же, как вы разрабатываете веб-приложения.
Я думаю электрон было бы хорошим дополнением к другим ответам.
Он использует NodeJS для запуска окна Webkit. Сам по себе Electron — это только html / css / js, но вы можете использовать любой Node-модуль в вашем приложении Electron, включая собственный, скомпилированный код C ++. Возможный модуль для встраивания вашего кода на C ++ — это node-gyp.
Имейте в виду, однако, что этот рабочий процесс может включать немного больше JS, чем было бы с другими ответами.
Мой любимый текстовый редактор, Атом, было сделано с электроном.