Russian Qt Forum
Ноябрь 23, 2024, 22:27 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: C++ JavaScript и google maps api, не запускается скрипт  (Прочитано 4134 раз)
Umnik
Гость
« : Октябрь 10, 2010, 21:24 »

Коротко суть проблемы: если вставить javascript-код в текст страницы и загрузить ее в QWebView, то все работает. А если
из Си++ пытаться запустить тот же код, то не работает, причем только google maps api (хотя может и другие интернет функции не заработают).
Теперь более подробно:
Прочитал статью о том как встроить google карты в программу на Qt, используя JavaScript и QtWebKit:
http://www.wiki.crossplatform.ru/index.php...Google_Maps_API
Скачал проект, откомпилировал, работает.
Переделал его под третью версию api карт гугл (требовалось переделать только html-страницу), тоже все работало, маркеры отображались.
(маркеры там добавлялись на карту в тексте хтмл-страницы).

Потом удалил добавление одного маркера из хтмл-страницы и сделал добавление из программы:

Код:
     ui.map->page()->mainFrame()->evaluateJavaScript("\
              mp = document.getElementById(\"map\");\
              var point2 = new google.maps.LatLng(51.5714, 45.9719);\
              var marker2  = new google.maps.Marker({position: point2, map: mp, title: \"3\"});\
              google.maps.event.addListener(marker2, 'click', function(){ mainWindow.debugMessage(\"Вы нажали на третий      маркер.\");});");


этот скрипт не работает. (если оставить только первую строчку скрипта то будет работать). Почему? Почему если то же самое давить в текст страницы то работает? Не работают получается только гугловские функции...
Записан
Umnik
Гость
« Ответ #1 : Октябрь 11, 2010, 15:54 »

Проблема была в версии Qt. на 4.5.0 не работает, а начиная с 4.6.0 уже работает
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.046 секунд. Запросов: 21.