AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Google Strecke berechnen

Ein Thema von capo · begonnen am 13. Feb 2009 · letzter Beitrag vom 13. Mär 2009
 
capo

Registriert seit: 7. Jul 2006
453 Beiträge
 
Delphi 11 Alexandria
 
#1

Google Strecke berechnen

  Alt 13. Feb 2009, 10:34
Liebes Forum.
Ich möchte die Entfernung zwischen zwei Punkten berechnen lassen.
Momentan mache ich das so.
Ist aber so super langsam dass ich euch fragen möchte wie ich das optimieren kann?

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, OleCtrls, SHDocVw, StdCtrls, shellapi, IdBaseComponent, IdComponent,
  IdTCPConnection, IdTCPClient, IdHTTP;

type
  TForm1 = class(TForm)
    wb: TWebBrowser;
    plz_1: TEdit;
    ort_1: TEdit;
    Strasse_1: TEdit;
    plz: TEdit;
    ort: TEdit;
    strasse: TEdit;
    Button2: TButton;
    Memo1: TMemo;
    Memo2: TMemo;
    kilometer: TEdit;
    Button3: TButton;
    Button4: TButton;
    IdHTTP1: TIdHTTP;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  wb.Navigate('http://maps.google.de/maps?f=d&source=s_d&saddr=' + plz_1.text + ' ' + ort_1.text + ' ' + Strasse_1.text + '&daddr=' + plz.text + ' ' + ort.text + ' ' + Strasse.text); //+'&ie=UTF8&z=8'
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  x1, x2: Integer;
  s: string;
  i: integer;
begin
  for i := 0 to Memo1.Lines.Count - 1 do
  begin
    s := Memo1.Lines[i];
    x1 := System.Pos('<DIV>[B]', s);
    x2 := System.Pos('km[/B] – ca.', s);
    if ((x1 > 0) and (x2 > 0)) then
    begin
      System.Delete(s, x1, x2 - x1 - 9);
      Memo2.text := s;
      memo2.text := Stringreplace(memo2.text, '', ' ', [rfReplaceAll]);
      memo2.text := Stringreplace(memo2.text, '[/B] ', ' ', [rfReplaceAll]);
      memo2.text := Stringreplace(memo2.text, '[B]', ' ', [rfReplaceAll]);
      memo2.text := Stringreplace(memo2.text, '[/B]</DIV></DIV>', '', [rfReplaceAll]);
      kilometer.text := memo2.text;
    end;
  end;

end;

procedure TForm1.Button3Click(Sender: TObject);
var
  DOM: variant;
  wort, wort2: string;
  i: integer;
begin
  wort := 'ist unbekannt.';
  wort2 := 'Meinten Sie';
  DOM := WB.Document;
  if Wb.LocationURL <> 'then begin
    memo1.text := DOM.Body.Innerhtml;

    for i := 0 to memo1.lines.count - 1 do
      if pos(wort, memo1.lines.strings[i]) <> 0 then begin
        Showmessage('Der Ort ' + Strasse.text + ', ' + plz.text + ' ' + ort.text + ' ' + wort);
      end
      else
        if pos(wort2, memo1.lines.strings[i]) <> 0 then begin

          if MessageBox(Handle, PChar('Überprüfen Sie bitte nochmal die Adresse, ' + #13#10 + 'wollen Sie die Adresse online bei "Google Maps" überprüfen lassen?'), PChar('Information'), $00000021) = IDOK then
          begin

            ShellExecute(Handle, 'open', pChar('http://maps.google.de/maps?f=d&output=html&saddr=' + Strasse_1.text + '+%2C+' + plz_1.text + '+' + ort_1.text + '&daddr=' + Strasse.text + '+%2C+' + plz.text + '+' + ort.text), nil, nil, SW_SHOW);
          end

          else
            ShowMessage('No page available!');
        end;
  end;
end;

end.
Hotte
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz