首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >swing桌面应用程序中某个区域的路线图?

swing桌面应用程序中某个区域的路线图?
EN

Stack Overflow用户
提问于 2014-07-20 14:31:21
回答 1查看 839关注 0票数 0

我试图创建Java桌面应用程序,它显示了JFrame中某些区域的路线图。但是pc没有连接到互联网,它将在局域网中。地图应该就像我们滚动鼠标,从地图的高度向下移动。就像放大这个区域。

我试图找出谷歌,我得到了很多论坛链接,但每一个显示我。

  1. 我必须做网络应用。
  2. 谷歌不支持“没有互联网”的地图设施。
  3. 我应该使用很多jpgs,它存储在文件夹中,用于显示地图fr、enter code hereom、各种高度,所以当我们在Google应用程序中看到任何地图时,看起来都是这样。

我找到了goworldwind.org,但现在还不清楚。

有什么线索吗?我该怎么办?

Hi使用下面的程序在jxbrowser中显示地图。

代码语言:javascript
运行
复制
package dummy;

import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.WindowConstants;

import com.teamdev.jxbrowser.chromium.Browser;
import com.teamdev.jxbrowser.chromium.BrowserFactory;

public class GoogleMapDemo {
public static final int MIN_ZOOM = 0;
public static final int MAX_ZOOM = 21;
private static int zoomValue = 4;

public static void main(String[] args) {
final Browser browser = BrowserFactory.create();

JButton zoomInButton = new JButton("Zoom In");
zoomInButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (zoomValue < MAX_ZOOM) {
browser.executeJavaScript("map.setZoom(" + ++zoomValue + ")");
}
}
});

JButton zoomOutButton = new JButton("Zoom Out");
zoomOutButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (zoomValue > MIN_ZOOM) {
browser.executeJavaScript("map.setZoom(" + --zoomValue + ")");
}
}
});

JPanel toolBar = new JPanel();
toolBar.add(zoomInButton);
toolBar.add(zoomOutButton);

JFrame frame = new JFrame();
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.add(browser.getView().getComponent(), BorderLayout.CENTER);
frame.add(toolBar, BorderLayout.NORTH);
frame.setSize(700, 500);
frame.setLocationRelativeTo(null);
frame.setVisible(true);

browser.loadURL("/home/StaticMapDemo/map.html");
//browser.loadURL("http://www.google.com");
    }
}

我有map.html文件

代码语言:javascript
运行
复制
<!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="https://maps.googleapis.com/maps/api/js?key=AIzaSyB7J1zsErb9_7jxNu5KU5kIENFObAQEbl0&;sensor=false">
</script>
<script type="text/javascript">
var map;
function initialize() {
var mapOptions = {
center: new google.maps.LatLng(48.209331, 16.381302),
zoom: 4
};
map = new google.maps.Map(document.getElementById("map-canvas"),
mapOptions);
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
</head>
<body>
<div id="map-canvas"/>
</body>
</html>

在运行程序时,我在控制台上遇到以下错误 11:59:16 INFO: OS名称: Linux 11:59:16 INFO: JRE版本: 1.7 32位11:59:16 INFO: JxBrowser构建:${build.number} 11:59:16 INFO:启动IPC.11:59:16信息:启动IPC服务器11:59:16信息:启动IPC进程.11:59:16信息:启动铬处理.11:59:16 INFO:‘/lib/i 386-linux-gnu/libudev.so.0’库存在: FALSE 11:59:16 '/tmp/jxbrowser-chromium-31.0.1650.57.8/libudev.so.0‘库存在: FALSE 11:59:16 INFO:查找libudev.so.x.x.x在’/lib/i 386-linux-gnu‘中.11:59:16信息:寻找libudev.so.x.x.x在‘/lib64 64’.11:59:16 INFO:未能在‘/lib 64’和‘/lib/i 386-linux’11:59:16中找到libudev.so.x.x.xcom.teamdev.jxbrowser.chromium.BrowserException::无法打开共享对象文件:在“.so.1”线程中没有这样的文件或目录异常,无法创建浏览器。在com.teamdev.jxbrowser.chromium.BrowserFactory.create(Unknown来源)在com.teamdev.jxbrowser.chromium.BrowserFactory.create(Unknown来源)在com.teamdev.jxbrowser.chromium.BrowserFactory.create(Unknown来源)在dummy.GoogleMapDemo.main(GoogleMapDemo.java:25)引起的: com.teamdev.jxbrowser.chromium.internal.ipc.IPCException: IPC进程退出。出口代码: 127在com.teamdev.jxbrowser.chromium.internal.ipc.k.run(Unknown源代码)在java.lang.Thread.run(Thread.java:744) 11:59:16信息:关闭IPC.线程" thread -1“中的异常( com.teamdev.jxbrowser.chromium.internal.ipc.IPC.b(Unknown来源)在com.teamdev.jxbrowser.chromium.internal.ipc.IPC.shutdown(Unknown源)在com.teamdev.jxbrowser.chromium.internal.aq.run(Unknown源)( java.lang.Thread.run(Thread.java:744) ) 如果是的话,请帮助我在swing应用程序中显示静态地图是正确的吗?

EN

回答 1

Stack Overflow用户

发布于 2014-07-20 14:47:21

如果我明白这个问题,你是在寻找一个世界地图,你可以在你的应用程序脱机使用?能够做到这一点是有问题的,因为世界地图将非常大,我不认为有一个世界地图的作者将允许您下载整个内容。

然而,如果你只对一张世界地图感到满意,也许这个网站可以帮助你:http://www.openstreetmap.org/。它们提供了一个开放源代码的世界地图,如果您查看导出选项卡,您可以找到有关如何获取可下载内容以供脱机使用的信息。

如果您正在寻找一个具有移动和缩放功能的代码示例,我建议您自己编写,如果遇到任何特定于代码的问题,请创建一个新的问题。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24851473

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档