首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java - ZUI (可缩放用户界面)

Java - ZUI (可缩放用户界面)
EN

Stack Overflow用户
提问于 2013-08-15 17:10:41
回答 1查看 1.3K关注 0票数 3

我目前正在做一个需要显示大量数据的小型个人项目,我突然想到实现一种可缩放的用户界面,以允许用户浏览大量的数据。

我知道一些现有的项目,如ZVTMPiccolo2d,我可能最终会在工作中使用这些项目,但是我也很想开始编写自己的项目。不过,我有点不确定该怎么开始。

据我所读,像Piccolo2d这样的项目似乎是由于Java内部缺乏“场景图”管理而开发的,而Piccolo2d则是根据“Pad”、“Pad++”和“Jazz”等老项目的工作开发的。

在快速搜索了一下之后,我可以看到场景图管理在JavaFX中是可用的,但是我想知道在Java7中Swing是否有这种功能。

我有一点想法,我想知道是否可以使用JLayer API实现一个基本的缩放接口,本质上是根据当前的缩放级别来装饰一个具有不同层的对象。

举个例子,假设我能在最远的缩放级别看到一个目录,然后放大显示目录的内容,进一步放大会显示该目录中的文件中的文本。我已经和鹰模式玩了很长一段时间了,所以这是我所想的一个完美的例子。

我知道这是个很长的问题(如果真的是个问题的话)。因此,从本质上说,让我们假设Piccolo等人并不存在,而我所拥有的只是核心的Java 7 JDK,有人能提出一个好的起点吗?

看来Piccolo2d在很大程度上是基于Java2d API的,所以我想知道这个API到底是已经进步了,或者是Java7引入了新的机制来实现类似的效果。

我会感兴趣的任何投入或建议,可以提供。我知道这不是一个容易的任务,但没有任何时间限制,这只是一个个人项目。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-15 19:36:47

我所拥有的只有核心的Java 7 JDK,有人能建议一个好的起点吗?

我建议使用JavaFX

  1. JavaFX包含在核心Oracle 7(和Java8)JDK和运行时中。
  2. JavaFX体系结构包括一个全面的场景图
  3. JavaFX有内置的场景图转换功能,如缩放、转换、分层、动画、转换等。
  4. JavaFX执行硬件加速呈现。
  5. 你可以使用像H.264这样的现代编解码器来进行可伸缩的视频播放。
  6. JavaFX包括一个全面的基于矢量的控制集,它看起来很好,因为它放大和输出。
  7. HiDPI对视网膜显示器等的支持包括在内(在Java8中)。
  8. 硬件加速了JavaFX场景图中的3D对象模型绘制(在Java8中)。
  9. 您可以使用FXML声明性地定义UI,并且可以交互地使用SceneBuilder端的问题,但可能会使开发更容易。
  10. JavaFX项目是开源,正在积极开发中。
  11. JPedal提供了一个第三方JavaFX的pdf查看器,您可以使用它查看可伸缩的pdf文档。
  12. JavaFX包含一个HTML (在Java8中具有缩放功能)。

执行方面的考虑

我的猜测(这完全是我的观点)是,在JavaFX中实现这个特定项目要比在普通Swing中实现这个项目要容易得多,因为底层的JavaFX技术和功能更符合您的需求。

显然,无论您选择何种技术,实现像Eagle模式这样全面的东西仍然需要大量工作,并且需要在Java系统之外进行本地扩展(以便显示虚拟桌面等等)。

JavaFX建议是从“我仅有的核心Java7JDK”的观点出发的。像ZVTM这样的系统具有支持ZUI构建的功能和API,但没有JavaFX应用程序(据我所知)包含(例如镜头视图、门户视图、将UI映射到大型多屏幕数组等)。Uf您有使用像ZVTM这样的预构建库的灵活性,应该根据您的项目需求对它进行认真的评估。

范围建议

为了使项目更容易管理,将初始实现需求限制在基于ZUI的文件系统查看器上,而不是功能齐全的ZUI桌面UI上。

JavaFX ZUI样本

祝你的项目好运。。。

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

https://stackoverflow.com/questions/18257887

复制
相关文章

相似问题

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