2016-03-15 2 views
0

Qt 5.6 RC содержит только веб-сайт и веб-просмотр, QWebView Depens On QwebEngine, но QWebengine компилирует только с MSVC 2013 и MSVC 2015 компилятор.Qt 5.6 RC evulating Javascript?

и так как я могу использовать функцию javasrcipt в Qt 5.6.

У меня есть координаты GPS latitue и longtite от модуля позиционирования. Я хочу использовать его с представлением в QWebKit, но QWebKit удален из Qt 5.6 RC.

Qt 5.5.1 может делать выше, чем я хочу, но некоторые библиотеки спецификаций имеют ошибку.

Я использую компилятор MinGW, и я хочу показать координаты на карте Google. Взволнованно, как я это делаю?

ответ

0

Пожалуйста, найдите вопрос и ответ от here

Вы должны использовать QWebChannel как в исходном CCODE и на стороне Javascript.

Зарегистрируйте класс, используя ниже метод

QWebChannel *channel = new QWebChannel(page()); 
channel->registerObject(QStringLiteral("jshelper"), &helper); 
page()->setWebChannel(channel); 

здесь helper является объект, который вы хотите поделиться с JavaScript

и в JavaScript вы можете получить объект, используя приведенный ниже код

document.addEventListener("DOMContentLoaded", function() { 
      new QWebChannel(qt.webChannelTransport, function(channel) { 
       // all published objects are available in channel.objects under 
       // the identifier set in their attached WebChannel.id property 

       jshelper = channel.objects.jshelper; 

      }); 
}); 

Если вы хотите запустить javascript из Qt, вы можете использовать функцию runJavaScript, пожалуйста, прочитайте от here

+0

таким образом вы можете совместно использовать объект C++ с помощью javascript. Я отредактирую ответ так, как мы можем использовать функцию javascript в Qt –

+0

. Ваше решение использует библиотеку webenginewidgets, и эта библиотека поддерживается только компилятором msvc 2013 и 2015. все еще я использую android g ++ в Windows 7, и он не работает с ним? я понимаю неправильно. Я открыл Bug для этого isue – CMLDMR

+0

ok..am не уверен о окнах. Это было выполнено отлично на моей машине ubuntu –

0

Я открыл ошибку для этого вопроса в этом отчет об ошибке: LINK

Решение это вы должны загрузить WebKit от источника и компиляции с Qt5.6 библиотеки снова, вы можете использовать его снова и evulating JavaScript. все же WebEngineWidgets поддерживает только два компилятора: MSVC 2013 и 2015. Не Android g ++ или другие.

Смежные вопросы