Java Swing GUI 的 Slippy 映射:SwingX-WS
Posted
技术标签:
【中文标题】Java Swing GUI 的 Slippy 映射:SwingX-WS【英文标题】:Slippy maps for Java Swing GUIs: SwingX-WS 【发布时间】:2013-12-17 08:16:35 【问题描述】:这篇文章的目的是在一个地方收集所有有用的信息和材料,以便使用 SwingX-WS 库在 Swing 应用程序中实现滑动地图,现在 SwingLabs 网站已经不复存在了——尽管然而,SwingX 的开发仍然活跃。
【问题讨论】:
问答+1(查找“slippy”-我今天的学习项目:-) 我不确定这类问题是否已成为话题,但由于您是在自我回答,我会避免自己进行膝跳投票。 (另外:JavaFX 可能是通过这些方式实现高级小部件的方式。它集成了 SwingLabs 以笨拙的方式所做的一些概念,例如绑定。) 并非如此,因为绝大多数 Java GUI 仍然是基于摇摆的,尽管 JavaFX 是一个非常好的框架,我自己在一些项目中使用它。加上 JavaFX 陡峭的学习曲线,以及成千上万的公司/开发人员依赖 Swing 来开发他们的新应用程序和不太新的应用程序的专有技术惯性,事实上可能有充分的理由(我不是想知道)让他们坚持使用Swing,以及现在越来越多的应用程序对滑图的需求越来越大,突然这个话题又变得热门起来。如果我可以[继续] [继续] 通过不让他们挖掘我已经整理好的内容来帮助一些用户,我对此很满意。是的,一个人可以构建一些基于 JavaFX 的奇特解决方案,并将其嵌入到他的 Swing 项目中,使用 JFXPanel 或其他东西,但这需要更改构建脚本和 [大量] 额外 [样板代码] 编码以将两种不同的范式。另一方面,对于 SwingX-ws(已经使用它并取得了很好的效果),这是一个非常有效的过程,恕我直言,时间是最宝贵的资产。 【参考方案1】:所以,首先,使用最新资源构建的最新 jars。
SwingX-ws:
swingx-ws rev. 317 binaries swingx-ws rev. 317 sources swingx-ws javadocSwingX v. 1.6.5-1(需要运行时依赖,需要Java6或更高版本):
swingx binaries swingx sources swingx javadoc swingx beaninfo (for IDEs' component palettes)关于 SwingX 的几句话:it 是一个了不起的项目,旨在通过额外的小部件扩展 Swing 功能(一个制作精良的 webstartable 演示 here,包含代码示例和所有内容),外观漂亮,功能强大,速度快并且没有时髦的依赖。恕我直言,它与现代 Nimbus L&F 完美地集成在一起(例如,与 jide-oss 不同,尽管它本身非常好,但与 Nimbus 的集成很差——但是,它有一个非常好的替代 L&F,称为 Xerto,但这是另一个故事......)。
关于文档,展示swingx-ws最好用的来源是Josh Marinacci写的一系列文章,这里按时间顺序列出:
Getting started with the Aerith Mapping Component NASA Maps in your Swing App A Mapping Christmas Present Tricked out maps and a new tile provider. Building Maps into Your Swing Application with the JXMapViewer Mapping Mashups with the JXMapViewer如果 [希望不太可能] 需要报告错误,可以找到项目的问题跟踪页面on JIRA。
【讨论】:
【参考方案2】:可以在github 上找到名为 JXMapViewer2 的 swingx-ws 的后代。截至 2019 年 4 月,它似乎相当活跃。
【讨论】:
【参考方案3】:swingx-ws-1.0.jar 与 swingx-1.6.jar 兼容,但与 swingx-all-1.6.4.jar 不兼容。 如果您正在使用 swingx-all-1.6.4.jar 并希望像使用 swingx-1.6.jar 一样使用 Tiles,这里有一个解决方法。
复制
org.jdesktop.swingx.util.GraphicsUtilities.java从 swingx-1.6.4 到您自己的新包(swingx-1.6 版本):
org.jdesktop.swingx.graphics.GraphicsUtilities.java
【讨论】:
以上是关于Java Swing GUI 的 Slippy 映射:SwingX-WS的主要内容,如果未能解决你的问题,请参考以下文章