Geolocation
TsgcHTMLComponent_Geolocation lit la position de l'appareil avec l'API Geolocation du navigateur et la transmet au serveur, une fois par requête ou en continu, depuis un panneau visible ou masqué, en Delphi, C++ Builder, Lazarus et .NET.
TsgcHTMLComponent_Geolocation lit la position de l'appareil avec l'API Geolocation du navigateur et la transmet au serveur, une fois par requête ou en continu, depuis un panneau visible ou masqué, en Delphi, C++ Builder, Lazarus et .NET.
Choisissez ShowUI et UpdateMode, définissez WSSend ou Action, puis lisez la propriété HTML. Chaque lecture arrive sur le serveur sous la forme de geo_lat, geo_lng, geo_accuracy et des autres champs geo_*.
TsgcHTMLComponent_Geolocation
Panneau de localisation ou panneau masqué + neuf champs cachés + script en ligne
Delphi, C++ Builder, Lazarus, .NET
Aucune bibliothèque à empaqueter et rien à charger depuis un CDN : la position provient de l'API Geolocation du navigateur. Servez la page en HTTPS, ou depuis localhost pendant le développement, car les navigateurs n'exposent la géolocalisation que dans un contexte sécurisé.
uses
sgcHTML_Component_Geolocation;
var
oGeo: TsgcHTMLComponent_Geolocation;
begin
oGeo := TsgcHTMLComponent_Geolocation.Create(nil);
try
oGeo.GeolocationID := 'deliveryGeo';
oGeo.ShowUI := False; // no visible panel
oGeo.UpdateMode := gumContinuous; // keep watching until stopped
oGeo.MinIntervalMs := 30000;
oGeo.MinDistanceMeters := 50;
oGeo.AutoStart := True;
oGeo.WSSend := True; // push every reading over WebSocket
WebModule.Response := oGeo.HTML; // hidden fields + inline script
finally
oGeo.Free;
end;
end;
// includes: sgcHTML_Component_Geolocation.hpp
TsgcHTMLComponent_Geolocation *oGeo = new TsgcHTMLComponent_Geolocation(NULL);
try
{
oGeo->GeolocationID = "deliveryGeo";
oGeo->ShowUI = false;
oGeo->UpdateMode = gumContinuous;
oGeo->MinIntervalMs = 30000;
oGeo->MinDistanceMeters = 50;
oGeo->AutoStart = true;
oGeo->WSSend = true;
String html = oGeo->HTML; // hidden fields + inline script
}
__finally
{
delete oGeo;
}
using esegece.sgcWebSockets;
var geo = new TsgcHTMLComponent_Geolocation();
geo.GeolocationID = "deliveryGeo";
geo.ShowUI = false;
geo.UpdateMode = TsgcHTMLGeolocationUpdateMode.gumContinuous;
geo.MinIntervalMs = 30000;
geo.MinDistanceMeters = 50;
geo.AutoStart = true;
geo.WSSend = true;
string html = geo.HTML; // hidden fields + inline script
Les membres que vous utilisez le plus souvent.
True (par défaut) affiche un bouton Localiser, un bouton Arrêter en mode continu, une ligne d'état avec latitude, longitude et précision, ainsi que le lien OpenStreetMap facultatif de ShowMapLink. False n'affiche rien de visible : le panneau démarre alors avec AutoStart ou avec el.sgcGeoStart() et el.sgcGeoStop().
gumOnce (par défaut) fournit une lecture par démarrage. gumContinuous surveille la position jusqu'à l'arrêt, limité par MinIntervalMs (5000 par défaut) et MinDistanceMeters (0 par défaut).
EnableHighAccuracy (True par défaut), TimeoutMs (10000 par défaut) et MaximumAgeMs (0 par défaut) sont transmis au navigateur à chaque requête.
Préfixe des neuf champs cachés, geo par défaut : latitude, longitude, précision, altitude, précision de l'altitude, cap, vitesse, horodatage et geo_error.
Poussez chaque lecture via le WebSocket sgc, envoyez-la en POST vers Action, ou naviguez vers RedirectURL avec la position dans la chaîne de requête. TargetSelector écrit lat,lng dans un autre élément de la page.
geo_error signale permission_denied, position_unavailable, timeout, insecure_context ou not_supported. Un événement DOM sgcGeolocation:position est déclenché à chaque lecture.
| Aide en ligneRéférence API complète et guide d'utilisation pour ce composant. | Ouvrir | |
| Tous les composants sgcHTMLParcourez la matrice complète des fonctionnalités de plus de 80 composants. | Ouvrir | |
| Télécharger la version d'essai gratuiteLa version d'essai de 30 jours fournit les projets de démonstration 60.HTML. | Ouvrir | |
| TarifsLicences Single, Team et Site avec code source complet. | Ouvrir |