Google Maps aplikacja okienkowa

Odpowiedz Nowy wątek
2013-10-28 13:49
0

Mam do zrobienia to samo co poniżej, ale jako jframe w swingu, w jaki sposób to zrobić? Kod:


<!DOCTYPE html>
<html lang="en">
    <head>
        <meta name="viewport" content="initial-scale=1.0, user-scalable=no">
        <meta charset="UTF-8">
        <title>Map</title>
        <style>

            html, body, #map {
                height: 100%;
                margin: 0px;
                padding: 0px

            }
            #search-panel{
                position:absolute;
                top: 5px;
                left: 50%;
                margin-left: -100px;
                background-color: aqua;
                padding:5px;
                border: 1px solid black;
                z-index: 5;

            }          
        </style>
        <script type="text/javascript"
                src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCA2P2o9B-Y6coVWIyNIO_sFEveqfyIp3U
                &sensor=true">

        </script>
        <script type="text/javascript">
            /*    
             function initialize() {

             //Opcje mapy
             var mapOptions = {
             zoom: 5,

             //Lokalizacja        
             center: new google.maps.LatLng(50, 15),

             //Kontrola mapy        
             panControl: true,
             zoomControl: true,
             mapTypeControl: true,
             scaleControl: true,
             streetViewControl: true,
             overviewMapControl: true,

             //Typ mapy
             mapTypeId: google.maps.MapTypeId.HYBRID

             }
             var map = new google.maps.Map(document.getElementById("map-europe"),
             mapOptions);
             }
             google.maps.event.addDomListener(window, 'load', initialize);
             */
            var geocoder;
            var map;
            function initialize() {
                geocoder = new google.maps.Geocoder();
                var latlng = new google.maps.LatLng(53, 19);
                var mapOptions = {
                    zoom: 7,
                    center: latlng,
                    mapTypeId: google.maps.MapTypeId.ROADMAP
                }
                map = new google.maps.Map(document.getElementById('map'), mapOptions);
            }

            function codeAddress() {
                var address = document.getElementById('address').value;
                geocoder.geocode({'address': address}, function(results, status) {
                    if (status == google.maps.GeocoderStatus.OK) {
                        map.setCenter(results[0].geometry.location);
                        var marker = new google.maps.Marker({
                            map: map,
                            position: results[0].geometry.location
                        });
                    } else {
                        alert('Geocode was not successful for the following reason: ' + status);
                    }

                });
            }

            google.maps.event.addDomListener(window, 'load', initialize);

        </script>
    </head>
    <body>

        <div id="search-panel">
            <input id="address" type="textbox" style="width: 100px;">
            <input type="button" value="Search" onclick="codeAddress()">
        </div>
        <div id="map"></div>
    </body>
</html>

Pozostało 580 znaków

2013-10-28 14:36
0

Ciężko będzie. Zależy jeszcze na jakim systemie ma to działać. Możesz wsadzić tam jakiś silnik przeglądarkowy (http://www.teamdev.com/jxbrowser/ http://djproject.sourceforge.net/ns/ https://code.google.com/p/javachromiumembedded/) ale z doświadczenia, powiem Ci, że różnie to działa. Trzeba się trochę pomęczyć z XULRunnerem czasem, czasami z jakimiś konkretnymi wersjami przeglądarek. Stosunkowo najprościej jest wykorzystać JavaFX2 i osadzić komponent WebView na panelu Swingowym.

Pozostało 580 znaków

2013-10-28 14:55
0

Są odpowiednie biblioteki http://wiki.openstreetmap.org/wiki/JXMapViewer https://code.google.com/p/gmap-viewer/

Pozostało 580 znaków

2013-10-28 15:28
0

A zapomniał bym dodać, tego typu osadzenie gmapsów wewnątrz aplikacji desktopowej jest zdaje się niezbyt zgodne z licencją googla ;)

oj tam, oj tam.... - Koziołek 2013-10-28 16:10
w sumie racja... - airborn 2013-10-28 17:48

Pozostało 580 znaków

2013-10-30 12:32
722
0

Mówicie że osadzanie mapy w aplikacji desktopowej jest niezgodne warunkami licencji Google? To właśnie tak wykorzystuje mapy Google w swojej pracy inżynierskiej, to może być problem?

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0