Bonjour à tous j'essaye depuis plusieurs jours d'obtenir les coordonnée GPS dans mon programme java (et non sur ma page HTML) pour pouvoir les traiter ensuite mais je n'y arrive pas . J'ai bien consulté l'excellent Tutorielfait par Mr BOUYE mais la encore ça marche bien avec un input mais je ne vois pas comment faire après un click qui me permet de positionner un nouveau point GPS et donc de pouvoir acquérir les valeurs de ce nouveau point dans mon programme java.
Je vous joins mon programme HTML:
et mon code java
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="initial-scale=1.0, user-scalable=no"> <title>Determiner les points de passage</title> <style> html, body { height: 100%; margin: 0; padding: 0; } #map { height: 100%; } </style> </head> <body> <div id="map"></div> <script> function initMap() { var myLatlng = {lat: 49.0 , lng: 2.0}; var map = new google.maps.Map(document.getElementById('map'), { zoom: 16, center: myLatlng }); var marker = new google.maps.Marker({ position: myLatlng, map: map, title: 'Click to zoom' }); map.addListener('center_changed', function() { // 3 seconds after the center of the map has changed, pan back to the // marker. window.setTimeout(function() { map.panTo(marker.getPosition()); }, 3000); }); google.maps.event.addListener(map, 'click', function(event) { placeMarker(event.latLng); // J ai bien essayé ici un onclick='java.setmaposition(this.value); mais ça ne marche pas ... }); function placeMarker(location) { var marker = new google.maps.Marker({ position:location, map: map, }); var infowindow = new google.maps.InfoWindow({ content: 'Latitude: ' + location.lat() + '<br>Longitude: ' + location.lng() }); infowindow.open(map,marker); } } </script> <script src="https://maps.googleapis.com/maps/api/js?sensor=false&signed_in=true&callback=initMap" async defer> </script> </body> </html>
En attente de vos réponses constructives ou bien de liens pour m'aider à trouver la solution.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.web.WebView; import javafx.stage.Stage; import netscape.javascript.JSObject; public class PointGPS extends Application{ public static class Bridge { public void setmaposition(String value) { System.out.printf("Position : %s", value).println(); } } @Override public void start(Stage primaryStage) { final WebView webView = new WebView(); // Chargement du formulaire. webView.getEngine().load(getClass().getResource("Position.html").toExternalForm()); // On passe maintenant l'objet java au formulaire. final JSObject jsobj = (JSObject) webView.getEngine().executeScript("window"); jsobj.setMember("java", new Bridge()); final Scene scene = new Scene(webView, 600, 600); primaryStage.setTitle("Test de WebView"); primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { launch(args); } }
Bien A vous
Partager