Eli*_*ght 21
我强烈建议Java用于跨平台GUI开发.特别是,我建议使用Netbeans IDE附带的GUI构建器.它非常简单而且非常强大.您可以指向并单击并拖放以创建GUI,并轻松自定义各种按钮和其他组件所采取的操作.
我更喜欢Python作为一种语言,但是GUI开发的免费工具都没有接近这一点,对于我使用的其他语言来说似乎也是如此.(我应该指出,QT为各种语言(如C和Python)提供了出色的GUI开发人员,但在开源项目中使用时它只是免费的.)
编辑:QT最近被重新许可为LGPL,因此您可以在商业应用程序中自由使用它.用于此的Python绑定(PyQT)尚未重新许可,但已创建另一个名为PySide的项目来提供Python QT绑定.
我个人鄙视模仿Java GUI根植的原生GUI的整个概念.无论你走到哪里都不会在家,它会让你成为一个游客到处,经常需要翻译.Eclipse GWT是一个更好的工具包,可以更好地利用本地资源,但它仍然认为人们喜欢编写Java代码,并且讨厌使用Java应用程序,想一想:您喜欢桌面上的哪些Java应用程序?
对于你选择运行它的任何操作系统来说,Tk都是丑陋和有限的,在我看来,Qt也是如此.
Mono需要一个很好的尝试,因为它是一种回答"为什么Linux糟透了"的问题,如果你还记得那个老帖子Miguel de Icaza.Mono附带了一套成熟的小部件和Apis,并没有试图限制你可以做的事情以便为你提供便携性.
Silverlight接近便携式并且具有出色的界面定义语言,但是无法访问系统,您必须在服务器和UI之间拆分应用程序,即使在同一台机器上也要克服它.
Adobe AIR是一种狗,本地系统访问并不容易.
如果我能够选择,我倾向于完全避免使用GUI并尝试使用Web服务器,甚至是本地Web服务器,以及Json,JQuery和所有这些东西.我发现我可以有更多的选择,并且比使用本机小部件更有效率.这结合了使用真实语言服务器端的优势和GUI中奇妙的无序的JavaScript和.
我认为这取决于您计划瞄准什么样的平台。Java 将拥有最多带有 VM 的平台。但是,如果您只想使用 Windows 和 Linux,则可以使用 C#(在 linux 上使用 mono)。