Как встроить элемент управления веб-браузера в кроссплатформенное приложение? - PullRequest
6 голосов
/ 27 апреля 2010

Мне нужно быстро написать это приложение: простое окно, которое переносится элемент управления веб-браузера, который запускает HTML-страницы. Пользовательский интерфейс браузера (например, кнопки навигации) должен быть отключен.

Как разработчик .net я бы встроил WebBrowser OCX в форму Windows. Но это должно работать и на Mac!

Я нашел следующих кроссплатформенных кандидатов. Какой из них вы бы выбрали (с точки зрения простоты, стабильности, поддержки сообщества и т. Д.):

  1. wxWidgets: http://www.kirix.com/labs/wxwebconnect.html

  2. QT: http://www.youtube.com/watch?v=Ee8eRwjbcFk&feature=related

  3. MONO: http://www.mono -project.com / WebBrowser

Ответы [ 5 ]

3 голосов
/ 27 апреля 2010

Почему бы не использовать встроенный Webkit?

1 голос
/ 07 октября 2010

QtWebKit

Порт Qt WebKit в настоящее время компилируется и работает в Linux (включая Maemo), Windows, Mac OS X и Symbian.

Нажмите здесь для получения инструкций по сборке.

Вместе с портом создается очень простой тестовый браузер.

0 голосов
/ 06 мая 2010

Другим вариантом может быть написание его как Java-приложения с использованием Eclipse Standard Widget Toolkit . Это включает в себя элемент управления браузера, который встраивает IE, Safari или Firefox, в зависимости от текущей платформы, и, как правило, хорошо работает в OS X.

0 голосов
/ 27 апреля 2010

Mono - это, пожалуй, лучший выбор, если вы в первую очередь являетесь разработчиком .NET и не очень заботитесь о создании хорошо интегрированного приложения Mac (которое ведет себя как приложение Mac во всех ожидаемых пользователями Mac). , Учитывая ваше проблемное пространство, это звучит как где вы находитесь. Тем не менее, обратите особое внимание на это ограничение со страницы WebBrowser, если оно относится к вашей проблеме:

Mono Webbrowser в настоящее время не хватает поддержка window.external, мост, который позволяет код Javascript встроен в браузер для общения с управляемым миром, используя ObjectForScripting.

QT очень хорошо зарекомендовал себя и является отличной платформой, если вы хотите разработать это на C ++. Помните, что если это коммерческое приложение, есть лицензионные сборы.

Я немного поиграл с wxWidgets. Это большое преимущество в том, что это, вероятно, будет самый маленький дистрибутив, так как вам нужно только включить то, что вам нужно. Если all вам нужен веб-браузер, я бы посмотрел на это, но по моему опыту трудно заставить программы wxWidgets выглядеть хорошо или работать правильно на Mac (или в Windows в этом отношении).

0 голосов
/ 27 апреля 2010

Так как у вас (предположения, сделанные из вашего поста). Net опыт, я бы пошел с Mono.

Рассматривали ли вы Adobe AIR? http://www.adobe.com/products/air/

...