也许是一个哲学问题。我最近在GUI中看到了一些有趣的视觉效果,主要是在原生平台API上。我知道“它只是软件”而且很可能,通过足够的工作,可以用像素完成任何事情。问题是(终于!),Java真的是一个用GUI做奇特事情的选择。我想这似乎是一个愚蠢的事情,但我有点像Windows Presentation Foundation的一些工作。对于Java,我没有看到像这样的综合努力。我应该在哪里看?
答案 0 :(得分:10)
看看JavaFX。
答案 1 :(得分:9)
Java中的GUI前端已经取得了一些进展。
例如,从Java 6 Update 10开始,可以在Java中制作透明和形状的窗口(即媒体播放器中常见的任意形状的窗口):
How to Create Translucent and Shaped Windows
Chet Haase和Romain Guy的Filthy Rich Clients: Developing Animated and Graphical Effects for Desktop Java Applications是一本很好的书,里面有关于在Swing中制作高级GUI的技巧。
答案 2 :(得分:5)
如果您喜欢功能强大的GUI并且不介意它不完全是Java-y,那么请查看Standard Widget Toolkit(eclipse背后的窗口工具集)。
答案 3 :(得分:3)
本书Filthy Rich Clients涵盖了Swing和Java2d中的许多高级渲染和动画技术。如果JavaFX不是一个选项,可能值得一看。
答案 4 :(得分:1)
答案 5 :(得分:1)
Java(在某些平台上)的唯一限制是JVM与主机OS ui框架之间的无缝集成(想想拖放等)。
除此之外,您认为Java无法处理的是什么?
答案 6 :(得分:1)
在Java中完成了主要的Swing开发,我想说如果Windows只是你想要的,我会非常认真地看待Java给你带来什么优势,让它值得拥有。是的,最终你可以完成它。有一些很棒的软件可以说明它可以完成。这不简单。完全没有。
但是如果你想进行Windows GUI开发,那么最终Java将会妨碍你。想要与Windows服务进行交互(如桌面搜索,只是为了选择一个例子)?很难做到。
另一方面,如果你需要你的软件独立于平台,这是一个完全不同的球赛。
JavaFX非常有前途,但它很新。无论如何,对于无聊的商业应用程序而言,许多你期望在那里存在的东西,还没有。如果你正在写游戏,那就有点不同了。