Visual Editor与手动代码

时间:2010-05-07 03:52:42

标签: java swing

我不确定它是如何使用其他框架的,但这个问题严格来说是关于Java swing的。

使用Visual Editor放置对象或手动编码对象在框架上的位置(布局管理器或空布局)是否更好?

根据我的经验,当涉及到不同的屏幕分辨率或更改窗口大小时,我在使用Visual编辑器时遇到了很多麻烦。使用手动代码放置对象我发现我的GUI在屏幕尺寸问题方面表现得更好。但是,当我想更改GUI的一小部分时,与使用可视化编辑器相比,它需要做更多的工作

只是想知道人们的想法是什么?

4 个答案:

答案 0 :(得分:5)

我从未在Swing UI中使用可视化构建器。

构建新UI的难易程度通常会成为软件维护过程中的一个难点:一些构建者无法轻易修改现有屏幕(特别是如果出于某种原因手动修改它们);对负责维护软件的人施加GUI构建器通常也意味着强加他们的IDE,如果他们不得不使用他们不习惯的IDE,或者更糟糕的是他们不喜欢,可能会缺乏生产力。 / p>

当然,手动构建UI需要付出代价:了解各种LayoutManagers的复杂性。但是,有很多种Swing LayoutManagers(主要是开源),有些易于使用(和维护)且功能强大。

两个例子:

  • DesignGridLayout将适用于 所有形式的窗户,而不是 只是易于使用(不到1小时到 理解和使用)但也强制执行 好看的UI,是唯一的 (我知道)你可以在哪里 通过“可视化”UI的形状 只是阅读java代码。
  • MigLayout更强大,但是 使用它有点复杂 不会阻止你设计丑陋的UI ; - )

还有一点:从不在UI中使用绝对位置/大小,这是在寻找问题(您的UI可能会在某些监视器/系统上被截断...)

答案 1 :(得分:2)

你需要发展两种技能:对于某些特定任务,一种技能总是比另一项更快。话虽如此,没有一些手工技能,设计师会让你放慢脚步。

答案 2 :(得分:1)

我个人使用布局管理器而不是可视化编辑器,结果是更易读,可维护的代码。此外,您不依赖于任何可能更改(或停止支持)的特定可视编辑器。

答案 3 :(得分:1)

我个人多年来一直使用很多GUI设计器 - 在Eclipse,NetBeans,IntelliJ中。我对他们施加的限制和他们生成的代码感到满意。最后,我做了很多自定义调整,使用设计师阻碍了我的工作而不是帮助它。然后我发现MigLayout - 对我来说这个软件就是Godsend。它设法从我的Swing实验室中消除了不必要的复杂性,让我以最少的努力设计出色的布局。我不认为MigLayout更难使用(如上所述) - 它肯定比CSS更难使用。

即使你不喜欢MigLayout,我的建议是远离GUI设计师。 MigLayout的一个更简单的替代方法是JGoodies Forms Layout(MiG取代),jide-oss也有一些不错的简单布局。但是,如果你想使用设计师,我的建议是 - IntelliJ IDEA Forms designer + JGoodies Forms - imo它生成更多可维护的代码然后说NetBeans Matisse。