1

電話でGoogleマップを表示するために簡単なコードを使用しています。TLocationSensor を追加し、Active プロパティを True に設定します。

LocationChanged イベント ハンドラーを追加します。

procedure TLocationForm.LocationSensor1LocationChanged(Sender: TObject;
  const OldLocation, NewLocation: TLocationCoord2D);
begin
  WebBrowser1.Navigate(
    Format(
      'https://maps.google.com/maps?q=%s,%s',
      [NewLocation.Latitude.ToString, NewLocation.Longitude.ToString]
    )
  );
end;

ブラウザが常にロードし続けるのはなぜですか?

有効な XHTML

4

1 に答える 1

1

場所が変わると、ページ全体が読み込まれます。代わりに、ページを 1 回読み込み、その後 JavaScript を介してマップを中央に配置する必要があります。現在の緯度/経度を渡す map.setCenter() のようなものにする必要があります。

于 2014-06-12T06:15:29.833 に答える