badni12
Goto Top

MS Access 2010, Web Browser Control (Map anzeigen)

Hallo

Ich habe mit der Funktion "Web Browser Control" ein Feld erstellt, welches mir Google Maps anzeigt.
Allerdings sieht man da auch immer das Bedienfeld, Eingabefeld etc..
Geht das, dass nur die Karte angezeigt wird?

danke schon im voraus

Lg
badni

Content-ID: 245070

Url: https://administrator.de/contentid/245070

Ausgedruckt am: 26.11.2024 um 11:11 Uhr

colinardo
colinardo 30.07.2014 aktualisiert um 10:55:54 Uhr
Goto Top
Moin,
ich denke mal du meinst die Controls die Google über der Karte einblendet und nicht die Adressleiste, Toolbar etc des Browsersteuerelements? Wenn ja kannst du dir entweder eine Seite mit dem Google-Maps API zusammenbauen und lädst diese dann in das WB-ActiveX oder du machst es über das Standard einbetten mit einem iFrame und lädst dann ebenfalls diese Seite in das WB-ActiveX
Hier eine Beispielseite:
<!DOCTYPE HTML>
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8">  
	<title>Google Maps</title>
</head>                                         
<body>       
      <iframe src="https://www.google.com/maps/embed?pb=!1m14!1m12!1m3!1d1273698.2746936546!2d7.663988700000001!3d51.427085299999995!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!5e0!3m2!1sde!2sde!4v1406709929742" width="600" height="450" frameborder="0" style="border:0"></iframe>       
</body> 
</html>
Den Einbettungscode kannst du dir auf jeder Google-Maps Seite unten rechts über das Zahnradsymbol erstellen lassen.

Grüße Uwe
badni12
badni12 30.07.2014 aktualisiert um 11:04:23 Uhr
Goto Top
Hallo Uwe


danke schon mal für die Antwort
wenn ich das mit einem iFrame machen will:
wo muss ich den Code hinschreiben? bin gerade ahnungslos :o

lg
badni
colinardo
colinardo 30.07.2014 aktualisiert um 11:12:15 Uhr
Goto Top
Speichere den Code in eine normale HTML-Datei, und dann lädst du diese HTML-Datei in dein Webbrowsersteuerelement, bzw. trägst die Adresse dazu in den Eigenschaften ein.
colinardo
colinardo 30.07.2014 aktualisiert um 11:24:24 Uhr
Goto Top
p.s. falls du Script-Fehlermeldungen erhältst, kannst du diese via VBA "stumm" schalten. Z.B. im Form_Open Event:
Private Sub Form_Open(Cancel As Integer)
    Webbrowser1.Object.Silent = True
End Sub
Webbrowser1 ist natürlich an den Namen deines Controls anzupassen.

Grüße Uwe
badni12
badni12 30.07.2014 aktualisiert um 11:47:10 Uhr
Goto Top
Hallo

Es funktioniert! trotz einer Fehlermeldung
An error has occured in the script on this page.
Line: 0
Char: 0
Error: Script error
Code: 0
URL: https://maps.gstatic.com/intl/de_AT_de/mapfiles/embed/17/11/init_embed.js
wenn ich bei dieser Fehlermeldung auf "ja" drücke, funktionierts,
weißt du vlt was da sein kann?

EDIT: habe deine vorige Antwort erst jetzt gelesen, somit wäre das geklärt, danke ;)


und dann hätte ich bitte noch eine weitere Frage:

Hatte vor den iFrame diesen Code
Me!ctlWeb.Navigate "http://maps.google.de/maps?f=q&hl=de&q=" & Me!Längengrad & " , " & Me!Breitengrad  

funktionierte

jetzt diesen

Me!ctlWeb.Navigate "G:\Material\User\Datenbank\test\iFrame.html" & Me!Längengrad & " , " & Me!Breitengrad  

jedoch geht das mit den Graden nicht mehr..
hättest vlt da auch einen Tipp?

lg und danke
badni
colinardo
colinardo 30.07.2014 aktualisiert um 11:50:57 Uhr
Goto Top
Zitat von @badni12:
jedoch geht das mit den Graden nicht mehr..
hättest vlt da auch einen Tipp?
das kann so auch nicht funktionieren, hier müsstest du den Link im iFrame der HTML-Datei anpassen und die Seite dann neu laden. Oder du baust dir eine im Web errreichbare PHP- oder JavaScript Seite via Google Maps API, der du dann deine Parameter auf die herkömmliche Weise übergibst
badni12
badni12 30.07.2014 um 11:52:14 Uhr
Goto Top
ca so?
<iframe src="https://www.google.com/maps/embed?pb=!1m14!1m12!1m3!1d1273698.2746936546!2d7.663988700000001!3d51.427085299999995!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!5e0!3m2!1sde!2sde!4v1406709929742" width="600" height="450" frameborder="0" style="border:0" & Me!Längengrad & " , " & Me!Breitengrad></iframe>  

aber das mit Me!Längengrad bzw. Me!Breitengrad kann hier ja nicht funktionieren oder?

lg
badni
colinardo
colinardo 30.07.2014 aktualisiert um 11:54:19 Uhr
Goto Top
Zitat von @badni12:
ca so?
neeeeeeeeeeeeee
schau dir das Google Maps API an dann läuft das:
http://stackoverflow.com/questions/11334042/google-maps-removing-contro ...
badni12
badni12 30.07.2014 um 13:10:05 Uhr
Goto Top
Hallo..

habe jetzt eine zeitlang das mit dem Google Maps API probiert hinzubekommen.. erfolglos..

kannst mir vlt sagen, wo, was reinkommt?
bzw.

ist es nicht einfacher wenn wir das über iFrame machen und nur mehr den Link richtig aktualisieren?

lg
badni
colinardo
colinardo 30.07.2014 aktualisiert um 13:59:58 Uhr
Goto Top
ist es nicht einfacher wenn wir das über iFrame machen und nur mehr den Link richtig aktualisieren?
dann hast du aber wieder das Problem das die üblichen Controls auf der Map angezeigt werden.

Mit dem MAPS API hast du völlige Freiheit was du anzeigen möchtest. In diesem Beispiel werden alle Controls ausgeblendet.

In Zeile 7 das ABCDEFGHIJKL durch deinen API-Key austauschen.WICHTIG, du musst das JavaScript-APIv3 in der Google Developer-Konsole aktivieren ! Dann kannst du das File auf einen Webserver packen und deine Parameter so in Access an deine URL übergeben.
http://www.deinserver.de/maps.html?lat=50.02&lng=6.03&zoom=14
Implementiert sind hier jetzt nur die Koordinaten und das Zoomlevel.

<!DOCTYPE HTML>
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8">  
	<title>Google Maps</title>    
</head> 
<script src="https://maps.googleapis.com/maps/api/js?key=ABCDEFGHIJKL&v=3.exp"></script>  
<script type="text/javascript">  
var map;
function getUrlVars()
{
    var vars = , hash;
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');  
    for(var i = 0; i < hashes.length; i++)
    {
        hash = hashes[i].split('=');  
        vars.push(hash);
        vars[hash[0]] = hash[1];
    }
    return vars;
}
function init() {
	var cords;
	var lat = getUrlVars()['lat'];  
	var lng = getUrlVars()['lng'];  
	var zoomlevel = parseInt(getUrlVars()['zoom']);  
	cords = (lat !== '' && lng !== '') ? new google.maps.LatLng(lat,lng) : new google.maps.LatLng(0,0);  
	zoomlevel = (!isNaN(zoomlevel)) ? zoomlevel : 8;
    var myOptions = {
		center: cords,
        zoom: zoomlevel,
        mapTypeId: google.maps.MapTypeId.ROADMAP,
        disableDefaultUI: true
    };
    map = new google.maps.Map(document.getElementById('mymap'), myOptions);  
}
</script>
<body style="margin:0;padding:0" onLoad="init()">         
      <div id="mymap" style="width:600px; height:450px"></div>  
</body> 
</html>
Viel Erfolg...
Grüße Uwe
badni12
badni12 30.07.2014 um 13:59:25 Uhr
Goto Top
vielen dank

lg
badni
badni12
badni12 04.08.2014 aktualisiert um 11:50:27 Uhr
Goto Top
hallo

da wäre jetzt noch etwas..

das mit dem key und so funktionert alles, wo muss ich allerdings meine koordinaten eintragen?

das ist der code der mir ne karte anzeigt, habe hier auch meinen key eingetragen
allerdings weiß ich nicht wie er hier meine koordinaten von der tabelle übernehmen soll

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />  
<style type="text/css">  
html { height: 100% }
body { height: 100%; margin: 0; padding: 0 }
#map_canvas { height: 100% }
</style>
<script type="text/javascript"  
src="http://maps.googleapis.com/maps/api/js?key=xxx&sensor=SET_TO_TRUE_OR_FALSE">  
</script>
<script type="text/javascript">  
function initialize() {
var mapOptions = {
center: new google.maps.LatLng(0,0),
zoom: 8,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"),  
mapOptions);
}
</script>
</head>
<body onload="initialize()">  
<div id="map_canvas" style="width:100%; height:100%"></div>  
</body>
</html>

Ich habe nämlich eine eigene Tabelle für die Koordinaten von den jeweiligen Lieferanten erstellt, wobei die Felder in der Tabelle für die Grade "Längengrad" und "Breitengrad" heißen
edit: (das er die Längen- und Breitengrade auch in dieser Tabelle aktualisiert funktioniert bereits)

würde mich über weitere hilfe freuen

lg
badni
colinardo
colinardo 04.08.2014 aktualisiert um 12:08:00 Uhr
Goto Top
Zitat von @badni12:
das mit dem key und so funktionert alles, wo muss ich allerdings meine koordinaten eintragen?
hatte ich oben bereits geschrieben, du übergibst die Koordinaten(lat/lng) als Parameter an die URL der Seite.
http://www.deinserver.de/maps.html?lat=50.02&lng=6.03&zoom=14
Grüße Uwe
badni12
badni12 04.08.2014 um 12:08:21 Uhr
Goto Top
hallo

und wie muss ich da vorgehen?

lg
badni
colinardo
colinardo 04.08.2014 um 12:11:23 Uhr
Goto Top
Zitat von @badni12:
und wie muss ich da vorgehen?
hä?? Du hast es doch vorher auch schon so gemacht, nur mit der URL von Google. Ist Quasi das selbe nur mit deiner eigenen HTML-Datei. Wie du vorgehst habe ich doch zum 2ten mal oben schon geschrieben.
badni12
badni12 04.08.2014 um 12:27:46 Uhr
Goto Top
aber wie kann ich mein File auf einen Webserver packen?

lg
badni
colinardo
colinardo 04.08.2014 aktualisiert um 12:29:21 Uhr
Goto Top
Zitat von @badni12:
aber wie kann ich mein File auf einen Webserver packen?
z.B. via FTP hochladen !