我应该为Java桌面应用程序使用哪种Swing外观和感觉?

5
我正在开发一个Java桌面应用程序,使用Swing构建GUI。我意识到可以通过设置不同的L&Fs来改变我的应用程序外观。
SUN提供了至少两种L&Fs,一种是默认的Metal L&F,另一种是“系统”L&F,可以让我的应用程序具有本地外观。此外,我还可以在互联网上找到一些非常酷的L&Fs。
问题是:我应该为我的桌面应用程序使用哪种L&F?有人说本地外观会更加用户友好,这是真的吗?如果我使用系统L&F,是否应该制作不同版本的用户手册(因为UI将根据操作系统而变化)?

这个问题非常主观,因为“哪一个看起来最好”是很难界定的。 - Mitch Dempsey
2
你认为Sun公司会花费时间允许自定义L&F并提供(如果我没记错的话)4种内置样式,如果有一个“最好”的样式供每个人使用吗? - Michael Mrozek
你考虑过让L&F可供用户选择吗? - JUST MY correct OPINION
4个回答

5

除非你想要一个完全自定义的应用程序外观,否则我建议使用系统L&F。这样做可以通过使应用程序在外观上类似于平台上的其他应用程序(用户可能熟悉)来使应用程序更易于使用。

我绝对会远离金属L&F。没有什么比那个丑陋的灰色铬更能代表“Java在90年代后期”的风格了。(除非那种复古的外观实际上是你想要的。)

如果您有足够多的用户在不同的系统上进行测试UI,则抓取多个系统的屏幕截图也不会有害处,以便在您的用户手册中使用。如果您制作的是印刷品,您可能只需显示最常见的平台,但电子副本可以针对您测试过的每个操作系统进行定制。


2
我猜你的意思不是要寻找最佳的外观和体验,而是倾向于使用系统默认的外观和体验,但不想在所有平台上投入更多的文档工作量。
实际上,你可以选择一个像nimbus这样的体面外观作为默认皮肤,并允许用户在首选项设置中选择“皮肤”。这样,你的文档就只需要包含默认皮肤的截图。

没听说过Nimbus。除了那些滚动条之外,一切看起来都很不错!呃! - kibibu

0

虽然你确实拥有完全的灵活性 - PLAF或可插拔的外观和感觉框架是可插拔的,但许多开发人员认为,如果应用程序不像其操作系统上的其他应用程序那样看起来不自然并且奇怪,用户会感到不适。 在这一点上,Swing有一个仅在OSX上运行的OSX外观和感觉,我认为在Windows上也是如此。

当然,这取决于你的受众,针对商业吸引力制作的Swing应用程序通常尝试使用本机外观和感觉。

注意:在OSX上,诸如将您的应用程序退出放在苹果菜单下(而不是文件菜单下,就像在Windows上一样)之类的一些标准OSX事物仅在其外观和感觉中可用。

编辑:要使应用程序真正跨平台,如果您使用本机外观和感觉,则必须针对不同的平台编写单独的手册。这可能是避免它并选择喜欢的外观和感觉(如Metal)的好理由。


0
如果跨平台性对您很重要,那么我会选择Nimbus(它相当漂亮,不像Metal)。一个看起来本地化的应用程序会让用户感到困惑,除非它的行为完全像本地应用程序一样。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接