ストリートビューをTWebBrowserコントロールに表示することに成功した人はいますか?
プログラムでURLを作成し、単純なDelphi形式で表示したいと思います。
これが私がそのフォームについてこれまでに持っているものです:
unit frmSView;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, OleCtrls, SHDocVw, StdCtrls;
type
TfrmStreetView = class(TForm)
browserStreetView: TWebBrowser;
txtAddress: TEdit;
procedure txtAddressExit(Sender: TObject);
procedure ShowSV(Lat: string; Lon: string);
private
// private declarations
public
// public declarations
end;
var
frmStreetView: TfrmStreetView;
implementation
{$R *.dfm}
procedure TfrmStreetView.ShowSV(Lat: string; Lon: string);
var
Addr: string;
Flags: OleVariant;
begin
Addr := 'http://maps.google.com/maps?q=&&layer=c&&cbll=' + Lat + ',' + Lon + '&&cbp=12,0,0,0,0&&output=svembed';
browserStreetView.Navigate(Addr, Flags, Flags, Flags, Flags);
txtAddress.Text := Addr;
ShowModal;
end;
procedure TfrmStreetView.txtAddressExit(Sender: TObject);
var
Flags: OleVariant;
begin
browserStreetView.Navigate(txtAddress.Text, Flags, Flags, Flags, Flags);
end;
end.
フォームが表示されたとき:
- その場所にストリートビュー情報がない場合は、通常のマップビューが表示されます。
- ストリートビュー情報(別のブラウザウィンドウで確認済み)がある場合は、灰色の画面が表示されます。
FlashPlayerがロードされていないと思います。
何かアイデアはありますか?
よろしく、
サイモン