【问题标题】:How to display and capture user selection on a country map如何在国家地图上显示和捕获用户选择
【发布时间】:2011-03-09 04:12:22
【问题描述】:

我们希望按大洲(例如亚洲、欧洲、南美洲、非洲......)显示所有国家,并捕获用户选择的大洲内特定国家/地区。有哪些选择可以实现这一目标?这与在freerice 中识别地图上的国家非常相似。我不确定谷歌地图以外的可用选项,但也不确定这是否可以使用谷歌地图 API 来完成。在这方面需要一些指导。

编辑:Ours 是一个基于 Java EE 5 的应用程序,使用 java、seam、richfaces 开发并部署在 jboss 5.1 容器上

【问题讨论】:

  • 这个太模糊了,你能详细说明你是如何实现的吗?
  • 为问题添加了更多信息

标签: java google-maps maps


【解决方案1】:

我假设您想创建一个可点击的地图供用户选择一个国家 - 比如this Map

这可以使用 HTML 图像映射或 Flash 来完成。在这两种情况下,您都需要手动定义可点击的热点。

如果您只有几个可选区域(而不是地球上的每个国家/地区),则可以使用 Google 地图与自定义标记(将其与您的网站风格融合)一起使用,每个标记都有自己的点击处理程序来处理选择。

【讨论】:

    【解决方案2】:

    您可以使用 HTML 和 CSS 完成此操作。并且也许使用 JavaScript 来实现您的功能。

    这是一个例子: http://www.cssplay.co.uk/menu/imap.html

    【讨论】:

      【解决方案3】:

      我不明白你的问题是否投反对票。授予它非常模糊,因为您没有指定将用于此的接口(它是一个 java 桌面客户端,一个基于 javascript 的解决方案......)

      我只能就 Java Swing 案例提出建议,所以就这样吧。您最好的选择是首先找到每个国家不同形状的世界矢量图(或自己制作)。然后,您可以将形状转换为 java2D 形状,创建一个可缩放的 JPanel(相信我比听起来容易),然后使用 contains(Point p) 方法简单地检查所有国家/地区形状的鼠标单击。 (当然,您必须考虑面板的缩放转换,但正如我所说,这比听起来容易得多)。

      恐怕我无法用代码示例详细说明,因为即使它“比听起来容易”,它也不是一个五分钟的解决方案:)

      【讨论】:

      • 为最初没有提供平台而道歉,我现在已经为这个问题添加了更多信息(它是一个使用 Richfaces 构建的 jee 5 应用程序)
      猜你喜欢
      • 2023-03-13
      • 2013-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多