Delphi 7 Proを使用しているのですが
ボタンを選択したらGoogleマップ(Web)を開き
指定の住所より地図を表示するプログラムを作成したいのですが
可能なのでしょうか。
Button1: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
private
{ Private 宣言 }
public
{ Public 宣言 }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
// From「DMonkey」
//+encodeURI(文字列) … 文字列を一部の文字を除きURLエンコードします。返値は文字列。
function UrlEncode(const AStr,AppendNoConvChars: String; Space2Plus: Boolean): String;
const
NoConversionChars = [
'A'..'Z','a'..'z',
'0'..'9',
'-','_','.','!','*','''','(',')']; // '@', '$',];
var
Sp, Rp: PChar;
NoConversion: set of Char;
i: Integer;
begin
NoConversion := NoConversionChars;
for i := 1 to Length(AppendNoConvChars) do
NoConversion := NoConversion + [AppendNoConvChars[i]];
SetLength(Result, Length(AStr) * 3);
Sp := PChar(AStr);
Rp := PChar(Result);
while Sp^ <> #0 do
begin
if Sp^ in NoConversion then
Rp^ := Sp^
else
if (Sp^ = ' ') and (Space2Plus) then
Rp^ := '+'
else
begin
FormatBuf(Rp^, 3, '%%%.2x', 6, [Ord(Sp^)]);
Inc(Rp,2);
end;
Inc(Rp);
Inc(Sp);
end;
SetLength(Result, Rp - PChar(Result));
end;
procedure TForm1.Button1Click(Sender: TObject);
var
Address:string;
const
GMapURL='http://maps.google.com/maps?q=';
begin
Address:=GMapURL+UrlEncode(Edit1.Text,'/:',False);
ShellExecute(0,
'open',
PChar(Address),
nil, nil, CmdShow);
end;
けどさん、ご回答ありがとうございます。
ご連絡遅れまして申し訳ありません。
ご丁寧なコーディングを記載頂きまして、
その通りに実行したところ、イメージ通りな
処理ができました。
こんなに楽して、いいのかなと、思ったぐらいです。
今後とも宜しくお願い致します。
ツイート | ![]() |