PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → [WD23] Affichage carte dynamique
[WD23] Affichage carte dynamique
Iniciado por Maxime D, 26,mar. 2019 09:04 - 7 respuestas
Miembro registrado
48 mensajes
Publicado el 26,marzo 2019 - 09:04
Bonjour, j'essai depuis quelques jours d'afficher une carte de l'API google map javascript, cependant impossible de l'afficher.
J'ai bien récupérer la clé API mais n'importe quel scripte que j’exécute dans le composant Active X ne m'affiche absolument rien.
Si vous avez des informations à ce sujet je suis preneur, merci.
Miembro registrado
48 mensajes
Publicado el 26,marzo 2019 - 11:53
Je me permets d'ajouter quelques info en plus.
J'arrive à afficher une page web qui fonctionne très bien avec ce code (code fourni par google dans les exemples)

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta charset="utf-8">
<title>Simple Polygon</title>
<style>
/* Always set the map height explicitly to define the size of the div
* element that contains the map. */
#map {
height: 425px;
}
/* Optional: Makes the sample page fill the window. */
html, body {
height: 100%;
margin: 0;
padding: 0;
}
</style>
</head>
<body>
<div id="map"></div>
<script>

// This example creates a simple polygon representing the Bermuda Triangle.

function initMap() {
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 5,
center: {lat: 24.886, lng: -70.268},
mapTypeId: 'terrain'
});

// Define the LatLng coordinates for the polygon's path.
var triangleCoords = [
{lat: 25.774, lng: -80.190},
{lat: 18.466, lng: -66.118},
{lat: 32.321, lng: -64.757},
{lat: 25.774, lng: -80.190}
];

// Construct the polygon.
var bermudaTriangle = new google.maps.Polygon({
paths: triangleCoords,
strokeColor: '#FF0000',
strokeOpacity: 0.8,
strokeWeight: 2,
fillColor: '#FF0000',
fillOpacity: 0.35
});
bermudaTriangle.setMap(map);
}
</script>
<script async defer
src="https://maps.googleapis.com/maps/api/js?key=CLE_API&callback=initMap"> //J'ai bien fourni une clé API fonctionnel lié à un compte
</script>
</body>
</html>


Mais lorsque j'essaie d'ouvrir cette page via un composant Active X, je reçois toujours la même erreur, et je reçois pareil lorsque j'inclus ce code dans un composant HTML .





Merci d'avance de vos réponses
Miembro registrado
677 mensajes
Publicado el 26,marzo 2019 - 19:07
personne ?
Miembro registrado
1.002 mensajes
Publicado el 26,marzo 2019 - 19:52
Essaye ca
EVersion_ie est une Enumération
IE7
IE8
IE8_Forcé
IE9
IE9_Forcé
IE10
IE10_Forcé
IE11
IE11_Forcé
FIN

Procedure Force_ie11_Emulation(EVersion_ie)
sValeurClé est une chaîne
SELON EVersion_ie
CASIE7
sValeurClé = "7000"
CASIE8
sValeurClé = "8000"
CASIE8_Forcé
sValeurClé = "8888"
CASIE9
sValeurClé = "9000"
CASIE9_Forcé
sValeurClé = "9999"
CASIE10
sValeurClé = "10000"
CASIE10_Forcé
sValeurClé = "10001"
CASIE11
sValeurClé = "11000"
CASIE11_Forcé
sValeurClé = "11001"
FIN

// Sélection de la clé registre ne fonction de l'executable (32 ou 64bits)
sEplacementRegistre est une chaîne = "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION"
//SI VersionWindows() = 64 ALORS
//SI pas EnMode64bits() ALORS
//// Application 32Bits
//sEplacementRegistre = "HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION"
//FIN
//FIN
// Chez moi ça fonctionne sans ça

// Inscription dans le registre
SI PAS EnModeTest() ALORS
RegistreEcrit(sEplacementRegistre,ProjetInfo(piNomEXE)+".exe",sValeurClé,RegistreTypeEntier)
SINON
RegistreEcrit(sEplacementRegistre,"wdtst.exe",sValeurClé,RegistreTypeEntier)
FIN

RETOUR


Code d'appel

Force_ie11_Emulation(EVersion_ie.IE11_Forcé)


jordan
Miembro registrado
48 mensajes
Publicado el 28,marzo 2019 - 09:08
Merci Jordan, cependant je ne vois pas vraiment comment je suis censé integré ce code, si vous pourriez m'en dire un peu plus, cela m'aiderai.
Miembro registrado
1.002 mensajes
Publicado el 28,marzo 2019 - 09:13
Tu creer une procedure globale qui s'appel : Force_ie11_Emulation

dans la collection de procedure tu creer une enumeration : EVersion_ie

le parametre que la procedure attend est : EVersion_ie

Ensuite dans le code d'initialisation de ton projet tu met : Force_ie11_Emulation(EVersion_ie.IE11_Forcé)

Jordan
Miembro registrado
48 mensajes
Publicado el 28,marzo 2019 - 10:25
Merci de ton aide, désormais je n'ai plus l'erreur qui apparais mais je n'arrive toujours pas à afficher la carte via le script.
Miembro registrado
48 mensajes
Publicado el 28,marzo 2019 - 11:09
Mise à jour : En passant de WinDev 23 à WinDev 24 j'arrive désormais à bien afficher la carte en utilisant un champ Active X.