С Qt 5.5, используя Minibrowser example, они обеспечивают, он использует что-то отличное от QWebView widget. Вместо этого он использует QML и QtWebView module. Когда вы смотрите в Javascript's navigator.appVersion
, это позволяет вам узнать, что QWebView загружает пользовательский AppleWebKit/538.1 (вещь поставляется с Qt5.5), а QtWebView (обратите внимание на разницу) загружает собственную базовую ОС AppleWebKit/601.1.56. Это подтверждается тем, что когда я загружаю Safari на мой OSX (версия El Capitan), он говорит 601.1.56.Как использовать QML QtWebView для вызова C++?
Проблема, однако, в том, как моя функция Javascript в Minibrowser вызывает функции C++ на бэкэнд для создания более мощного материала? Когда я использовал виджет QWebView, я смог использовать C++ webkit bridge, который позволял мне вставлять в объект DOM my C++ и, следовательно, мог бы вызвать мой код на C++. Я не вижу какой-либо техники, задокументированной для того, как это сделать с примером Minibrowser на основе QML, который использует QtWebView. Какая техника?
EDIT: О, и для уточнения, я не звоню на удаленные веб-страницы с помощью этого веб-сервера. Я просто вызываю материал через файл: //. Другими словами, я использую богатый интерфейс webkit, чтобы дать мне супер мощный графический интерфейс, который выходит за рамки того, что Qt-виджеты и QML могут обеспечить для меня.
@MrEricSir Я думаю, вы можете быть смущены. Я имел в виду, что QtWebView плохо документирован, а не QWebView. QtWebView поставляется с 5.5 и использует только собственные API-интерфейсы webkit, которые поставляются только на Android, iOS и OSX, но не на Windows или Linux. QWebView, с другой стороны, поставляется с 5.5, но поставляется с более старой (но все еще пригодной для использования) версией webkit. – Volomike
@MrEricSir Кроме того, похоже, что QtWebView в версии 5.5 просто еще не годный к употреблению - материал ломается, как я объясняю выше. Таким образом, на самом деле у нас нет выбора, кроме как использовать QWebView на данный момент, который будет работать только в 5.5, но не будет отправлен за 5.5, а затем перенесется в QtWebEngine позже. Однако плохая новость о QtWebEngine заключается в том, что она развертывается с Chromium вместо Webkit - с полной установкой - и, скорее всего, вы не получите одобрение в Apple Store. – Volomike
Я пробовал и не смог с сообщением об ошибке: '' QtWebKit.experimental 'не установлен'. Почему это происходит? Я использую Qt 5.7.0 для Windows. –