嗨,StackOverFlow大家庭
我开发了一个Java Swing应用程序,但是我想改进我的Swing框架的设计。我在谷歌上搜索了这个问题,但是我找不到一个合适的解决方案。请分享您的经验和意见。
p.s.也许这个问题对你来说不太好,但对我和其他人来说很重要
嗨,StackOverFlow大家庭
我开发了一个Java Swing应用程序,但是我想改进我的Swing框架的设计。我在谷歌上搜索了这个问题,但是我找不到一个合适的解决方案。请分享您的经验和意见。
p.s.也许这个问题对你来说不太好,但对我和其他人来说很重要
去买这本书:
从描述页面中:
肮脏富裕的客户端是指那些图形非常丰富的应用程序,它们散发着很酷的气息。它们从一开始就吸引用户,并以兴奋的死亡紧握留住他们。它们让用户告诉他们的朋友有关应用程序。
简而言之,它们让用户真正地享受应用程序体验。您上次享受使用软件应用程序是什么时候呢?
也许你需要更多肮脏富裕的客户端。
阅读并理解它,直到获得您喜欢的用户界面。
:)
好的,我来分享一下我的经验。总的来说,我更喜欢使用SWT和Eclipse,因为它们可以更好地集成,并且具有扩展点等灵活性,但有时候这可能会过度。
在使用swing时,除非表单非常简单,否则我几乎总是使用GridBagLayout。这是因为我设计或体验的大多数GUI都包含许多不一定按流程或表格样式布局的元素 - gridbaglayout提供了以Java喜欢的方式绘制UI的能力+允许必要时调整大小,或者您可以防止发生这种情况。
我使用的特定功能:
GridBagConsts.insets = new Insets(2,2,2,2);
try
{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch(Exception e)
{
System.out.println("Error setting native LAF: " + e);
}
将外观设置为系统的外观 - 我不喜欢内置主题(金属),与系统集成更加友好。
这就是硬性规则和快速规则。我建议您查看以下内容:
除此之外,它非常应用程序特定化,您需要阅读有关通用UI设计的资料。一般来说,使用内置控件和工具会有所帮助,例如那些看起来像系统的控件和工具。例如,Java类库包括文件选择器:http://java.sun.com/docs/books/tutorial/uiswing/components/filechooser.html,当设置为系统LAF时,它们看起来像Windows或Gnome(-ish)选择器。采取措施使其与其他每个应用程序看起来熟悉,反过来将使您的应用程序更易于使用。
同时也看看JSR-296:这是正式化组合应用程序某些方面的尝试,例如如何处理资源包,如何触发“任务”(后台和模态等)。
Netbeans的当前版本(以及一些先前版本)有一个向导可用于构建JSR-296应用程序(“桌面应用程序”)。