procedure TForm22.Button1Click(Sender: TObject);
var
aParams: TMapsEngineYandexLocator;
params, values: array of string;
begin
// 37.151.215.206 Астана, Казахстан
SetLength(params, 1);
SetLength(values, 1);
params[0] := 'Внешний IP';
InputQuery('Введите...', params, values,
procedure(const AResult: TModalResult; const AValues: array of string)
begin
if AResult = mrOk then
begin
mEngine.SetOptionsYandexLocator('');
aParams.IP.IPAddress_v4 := AValues[0];
TTask.Run(
procedure
begin
mEngine.YandexLocator(aParams, TMapsEngineYandexLocatorType.IP, myLoc);
mEngine.SetOptionsYandex(''); // получить через Yandex
mEngine.Geocoding(myLoc, aData);
TThread.Synchronize(nil,
procedure
begin
lbCoordinate.Text := 'lat: ' + myLoc.Latitude.tostring + ' lon: ' + myLoc.Longitude.tostring;
lbAddress.Text := aData.CountryCode + ' ' + aData.City + ' ' + aData.FormattedAddress;
end);
end);
end;
end);
end;