Форум программистов, компьютерный форум, киберфорум
Delphi: Сети
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
2469 / 1281 / 213
Регистрация: 26.02.2009
Сообщений: 5,481
Записей в блоге: 5
1

Google Earth и TWebBrowser

23.12.2009, 18:29. Показов 2282. Ответов 1
Метки нет (Все метки)

Приветствую!
Задача следующая: Необходимо организовать связь между Делфёй и GE(google earth). Например, в окне TWebBrowser отображается наша планета, юзер кликает по Земле и в Label1 и Label2 появляются координаты(широта, долгота). Впринципе, пока всё!

Вот нашёл как это сделать непоредственно в через яваскрипт
http://code.google.com/apis/aj... t_handling
Как мне достать данные сгенерированные явой и поместить их в лэйблы??

Спасибо.

Добавлено через 9 минут
Всплыла ещё одна проблема.
Почему-то TWebBrowser отказывается показывать нашу землю. Просто пустые(без картинок анимации Земли) страницы. Как оказалось Internet Explorer аналогично отказывается работать, хотя гугл хром - нормально работает.
У меня есть два вопроса:
1 Можно ли заставить заработать IE с GE?(может плагин какой-то поставить. Какой?)
или
2 Можно ли заставить TWebBrowser работать через Гугл Хром, а не через IE.
Если да, то как?

Добавлено через 7 минут
Если есть какие нибудь мысли, пожалуйста, не стисняйтесь - пишите. Потому что своих мыслей пока вообще нет =(
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.12.2009, 18:29
Ответы с готовыми решениями:

Google earth Online
Люди откуда достать прогу что то вроде гуугл земля только что бы была онлайн????очень хочу...

EB-500 + Google Earth
Прикрутил железяку к Google Планета Земля - получилось вот что

Google earth и Windows XP SP 2
Доброго времени суток! На машину с WinXP_SP2 необходимо установить google earth, работает через...

Google Earth и сохранение маршрутов
Здравствуйте. Не так давно я работал с Google Earth, брал две метки соединял их маршрутом и...

1
2469 / 1281 / 213
Регистрация: 26.02.2009
Сообщений: 5,481
Записей в блоге: 5
25.12.2009, 15:33  [ТС] 2
Лучший ответ Сообщение было отмечено snake32 как решение

Решение

кое-что сделал:
Цитата Сообщение от snake32 Посмотреть сообщение
Почему-то TWebBrowser отказывается показывать нашу землю. Просто пустые(без картинок анимации Земли) страницы. Как оказалось Internet Explorer аналогично отказывается работать, хотя гугл хром - нормально работает.
Переставил плагин Google earth и перегрузил браузер - всё заработало.

Цитата Сообщение от snake32 Посмотреть сообщение
юзер кликает по Земле и в Label1 и Label2 появляются координаты(широта, долгота)
загружаю в браузер подготовленную страничку:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<HTML>
<head>
<title>Quadtree Projections onto the Earth</title>
<script src="http://www.google.com/jsapi?key=ABQIAAAAwbkbZLyhsmTCWXbTcjbgbRSzHs7K5SvaUdm8ua-Xxy_-2dYwMxQMhnagaawTo7L1FE1-amhuQxIlXw"></script>
<script>
        google.load("earth", "1");
        var ge = null;
function init() {
  google.earth.createInstance("map3d", initCallback, failureCallback);
}
function initCallback(object){
  ge = object;
  ge.getWindow().setVisibility(true);
  ge.getNavigationControl().setVisibility(ge.VISIBILITY_AUTO);
  ge.getLayerRoot().enableLayerById(ge.LAYER_BORDERS, true);
  ge.getLayerRoot().enableLayerById(ge.LAYER_ROADS, true);
  
  function eventHandler(event){
    document.all.IDlatitude.value = event.getLatitude();   // запись данных в подготовленные хиддены
    document.all.IDlongitude.value = event.getLongitude(); // запись данных в подготовленные хиддены
   
    // Prevent default balloon from popping up for marker placemarks
    event.preventDefault();
 
    // wrap alerts in API callbacks and event handlers
    // in a setTimeout to prevent deadlock in some browsers
  }
  
  // listen to the click event on the globe and window
  google.earth.addEventListener(ge.getGlobe(), 'click', eventHandler);
  google.earth.addEventListener(ge.getWindow(), 'click', eventHandler);
    
}
 
function failureCallback(object) {
}
</script>
</head><body onload='init()' id='body'>
<center>
      <div id='map3d' style='border: 1px solid silver; height: 600; width: 800;' ></div>
    <form name="formbase" method="post">
        <input id='IDlatitude' name="latitude" type="hidden" size="40" value='2135'>
        <input id='IDlongitude' name="longitude" type="hidden" size="40" value='356+'>
    </form>
</body>
</HTML>
а потом кликаю по кнопочке Button1 в delphi :
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
procedure TForm1.Button1Click(Sender: TObject);
  var
  I,J,K          : Integer;
  FormItem       : variant;
begin
  if WB.OleObject.Document.all.tags('FORM').Length = 0 then // есть ли формы?
  begin
    Exit;
  end;
  Button2.Click; // очистка
  K:=0;
  for I := 0 to WB.OleObject.Document.forms.Length - 1 do   // перебор всех форм
  begin
    FormItem := WB.OleObject.Document.forms.Item(I);
    for j := 0 to FormItem.Length - 1 do                    // перебор всех эл-тов формы
    begin
      try
        if( FormItem.Item(j).TagName <> 'INPUT' )then continue;  // если тип эл-та НЕ input - пропускаем
 
        Memo1.Lines.Add('Name :' + FormItem.Item(j).Name + ' ; ' +   // вывод данных
                        'Value :' + FormItem.Item(j).Value );
          Inc( K );
      except
        Exit;
      end;
    end;
  end;
  Label1.Caption := IntToStr( K );
end;
 
procedure TForm1.FormCreate(Sender: TObject);
begin
  WB.Navigate('D:\DelphiProjects\snake32\TWeb\test.htm');
end;
Осталось избавиться от повторного клика, хук что-ли поставить?

Добавлено через 8 минут
Был бы OnClick в TWebBrowser....эх...
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.12.2009, 15:33

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Метки google maps(earth) в autocad
Есть способ внедрить Google maps(earth) в autocad, но уже с поставленными метками?

3D здания в Google Earth. Каким редактором написовать?
3D здания в Google Earth. Каким редактором написовать?

Google Earth Beta 5 позволяет рассмотреть дно океана
Новая версия Google Earth Beta 5 представляет несколько новых обновлений, включая возможность...

Не открываются некоторые .ехе файлы,(Google Earth и Microsoft office)
Короче не открываются пока Google Earth и Microsoft office ,неделю назад переустановил систему из...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.