是否有任何 IDE 可以简化创建 Swing 应用程序(最好是类似于 Visual Studio 的东西)
31 回答
就像其他人提到的那样,NetBeans 的可视化编辑器非常好,但是它非常依赖于Swing Application Framework,因此您需要了解它是如何工作的才能正确使用它(尽管您不需要挖掘只是为了测试东西)。
除此之外还有:
- IntelliJ IDEA可视化编辑器(功能的Flash 演示)
- 和 Eclipse 的可视化编辑器
我个人使用过 NetBeans 和 IDEA 的可视化编辑器。两者都很好,但我认为 NetBeans 有优势,因为它不使用任何专有的方式来保存 GUI 结构,而是执行类似于 Visual Studio 所做的事情 - 自动生成您可以添加的代码。IDEA 将信息存储在一个单独的文件中,这意味着您以后必须使用 IDEA 来直观地编辑布局。
我没有使用过 Eclipse 的可视化编辑器。
我投票支持 NetBeans 的可视化编辑器。我认为它满足了大多数人在可视化编辑器中寻找的东西,并使其足够灵活,可以通过代码手动堵塞漏洞而不影响可视化编辑器(因此您可以在代码和设计视图之间来回切换而不会破坏任何一个)。
对我来说,最好的可视化 Swing 编辑器是JFormDesigner,您可以独立运行它,也可以作为 IntelliJ IDEA 和 Eclipse 的插件运行。
它生成正确的(实际上可读的)源代码,它非常符合人体工程学和直观,最重要的是,非常可扩展。最后一点非常重要,因为如果你想构建一个像样的 Swing 应用程序,你必须扩展基础组件或使用一些第三方库,并且必须很容易将它们集成到可视化编辑器中。
它不是免费的,但对于您获得的电力而言,它是物美价廉的(129 欧元/159 美元)。我已经使用了几年并且喜欢它。
您可以使用两个(我都使用过它们,它们都非常强大且易于使用):
- NetBeans有一个内置的GUI Builder。
或者您可以使用:
就个人而言,我更喜欢带有Windowbuilder的 Eclipse,但这只是我。您可以使用任何一种。
这是Windowbuilder插件的图片:
这是NetBeans内置的GUI Builder的图片:
Netbeans 有一些 GUI 构建支持,它是市场上最流行的 Java IDE 之一。给它看看。
试试Instantiations的Windows Builder Pro。它包括Swing Designer,它是一个 Swing UI 构建器。它基于 Eclipse。
Abeille非常好,基于 JGoodies FormLayout。与几乎所有其他 Java GUI 构建器不同,Abeille 默认不生成代码。在我使用它的项目中,避免阅读或滚动布局代码(因为该代码不再存在)真是太好了。我们的大部分手写代码都关注将事件连接到操作,只是询问相关控件的布局。
代码生成是 Java 中布局代码的默认方式是一种犯罪,因为更好的 GUI 方式已经存在了几十年。我使用了 NetBeans GUI 代码生成器 Matisse。而 Matisse(现称为“ Swing GUI Builder") 使布局组件变得愉快,它与所有其他代码生成工具相似,因为当您使用 Matisse 时,您必须不断担心其他人在 NetBeans 之外编辑了“您无法在 NetBeans 中编辑”GUI 部分。尽快当您再次触摸布局构建器时,它可能会破坏他们的工作,然后您的 GUI 会损坏。可能会有一些简单的任务,例如重新排序变量初始化及其使用或重新命名变量(这在使用Matisse 的数据库功能)。你知道如何通过编辑不可编辑的源代码来做到这一点,但可能会浪费时间试图弄清楚如何在 GUI 构建器中做同样的事情。像大多数代码生成工具一样,它可能会让你开始,但最终您将不得不自己维护生成的代码。
WindowBuilder Pro for Eclipse
- 自由的!
- 它适用于现有代码并且不会将您锁定(与 NetBeans 不同)
- 它适用于 MiGLayout
- 不过,它确实有一些您的视图类必须遵循的约定。
在 Eclipse v4.2 (Juno) 中安装:
- 转到 - 菜单帮助→安装新软件...
- 选择 - 使用:Juno - http://download.eclipse.org/releases/juno。
- WindowBuilder 项目位于“通用工具”下(或使用过滤器)。
旧版本和 zip 可在http://www.eclipse.org/windowbuilder/download.php获得。
最新版本的 NetBeans 包括一个非常漂亮且简单的 Swing 可视化编辑器,名为 Matisse
我对NetBeans有很好的体验。如果您了解这些应用程序的每个小部分,那就太容易了。
最复杂的部分是使用,例如,布局(如果你不能处理复杂的部分),但一切几乎都是即插即用的。
此外,您可以放入JFrame
其他框架,而无需为此创建另一个框架类。我认为那会很好。
坦率地说,我从来没有见过一个编辑器能比我在文本编辑器中手动完成的更接近。如果您只有非常简单的需求,例如在窗口中放置几个按钮,那么所有可视化编辑器都很好。当事情变得更加复杂时,视觉编辑器很快就会失去竞争优势。
我通常使用一堆由更基本的小部件构建的高级类,并从中连接我的 UI。这也让我可以使用自动化的 JUnit 测试轻松地测试我的 UI(因为我可以控制源代码的外观)。
最后,对 UI 的更改不会在版本控制系统中产生不必要的噪音。
我推荐 Eclipse IDE 3.7.2 Indigo / 2012 年 2 月 24 日的 WindowBuilder 插件。
下面是一步一步的安装: 像 Visual Basic 一样简单地创建 Java GUI
NetBeans 是最简单易用的 ( http://netbeans.org/ )。但是,它不允许您编辑(微调)生成的代码。
JDeveloper ( http://www.oracle.com/technetwork/developer-tools/jdev/overview/index.html ) 是另一种解决方案,它允许您编辑代码......但我觉得 NetBeans 更直观。
我已经尝试了一些,我发现最接近 Visual Studio 的是 NetBeans。6.5 版非常出色,并且比 5 版得到了真正的改进。
我已经在几个 IDE 之间切换,而我认为在使用和性能方面具有最佳 GUI 构建器的一个必须是 NetBeans。
根据我的经验,Eclipse 可视化编辑器相当乏味。我对同样基于 Eclipse的JBuilder比较幸运,只需像许多其他商业产品一样向它添加一些插件。它仍然无法解析任何 Swing 代码(我怀疑任何 Swing WISIWYG 编辑器都可以),但如果你从它开始,它会给你相对无缝的体验。不过,您需要为此付费。
归根结底,我使用过不同的类似 UI 工具,Flash Builder,Delphi 等,但除非你做一些相对琐碎的 UI 设计,不包括太多的业务逻辑和与其他层的通信,否则你将不得不接受一旦你学会正确地做代码,你就能在代码中创建的东西比任何编辑器能够为你提供的东西要强大得多。
我是 JetBrains 的忠实粉丝,谈到 Java,IntelliJ是我用过的最好的 IDE。
对于 Swing,他们有一个完全交互式的 UI 构建器。而且,对于实际的编码,他们的智能感知是无与伦比的。
JFormDesigner。
过去我广泛使用 NetBeans 进行 GUI 设计,但现在我将 IntelliJ 与 JFormDesigner 插件一起使用。我尝试了其他几种解决方案,这是我坚持的一种。
JFormDesigner 还可以与 JBuilder 和 Eclipse 一起使用,因此您不会将项目锁定到一个特定的 IDE。
当然,您应该使用 NetBeans 来构建 Java Swing GUI。拖放功能和自动代码生成非常成熟。
对于 Eclipse,我不确定。但是因为 IBM 有自己的 GUI SWT 包,我不确定它是否支持 Swing。
我曾经相当多地使用 MyEclipse。它有一个不错的 IDE 用于制作 Swing 表单等。我认为它在过去一年中有所改进——它们似乎经常在 gobs 和 heaps 中添加功能。
当我使用 Eclipse 时,我使用 Visual Editor 插件。它生成干净的源代码,具有良好的模式并且易于修补/修改/扩展。不幸的是,它不是很稳定。但值得一试。
我喜欢 Eclipse 的 VisualEditor (VE),前段时间我曾尝试切换到另一个编辑器,但我发现这是不可能的。可视化编辑器具有此功能,它可以生成可管理、可读、可编辑和易于理解的代码。
与前面提到的 NetBeans 编辑器和 WindowBuilder 不同,它使用惰性初始化模式来分离组件的初始化。此外,它不需要锁定您无法编辑的部分代码;您可以手动编辑代码,VE 仍然可以处理您的更改。
VE 的唯一缺点是它使用Eclipse v3.2 (Callisto)(没有Eclipse v3.4 (Ganymede) 或Eclipse v3.3 (Europa) 的官方版本),因此您必须有效地使用两个 Eclipse 实例,一个用于 VE,一个用于其余的开发。
我从最近关于 comp.lang.java.gui 的讨论中得到它(我是这篇文章的作者,所以我可以正确地做到这一点)。这是整个讨论的链接。
除了 NetBeans for Swing,我没有使用任何其他工具,但我对它非常满意。我在一个价值 2500 万美元的应用程序上使用了 18 个月,并开发了一个原型应用程序来替换 Windows 窗体应用程序。
直到微软推出 WPF,在我看来,对于传统的桌面应用程序来说,没有更好的工具包。(我总是发现 Windows 窗体太局限了)。
在过去的近 10 年里,我们一直在进行 Swing 开发。有一些不错的 GUI 构建器可用(例如JFormDesigner),但在不同种类中都限制了我们太多。
例如,我们有很多没有公共无参数构造函数的组件(例如,需要构造函数中的模型的 JTable 子类)或者我们有组件工厂。
桌面应用程序通常必须被混淆。混淆很容易破坏使用 GUI 设计器创建的用户界面,或者需要大量工作来避免混淆此类类。
另一个经常发生的情况是,例如,面板应该只包含某些组件,具体取决于某些条件。简单地隐藏它们会使 GUI 看起来很糟糕;他们宁愿不应该被添加。我从来没有找到一个提供这种灵活性的 GUI 编辑器,即使有,它也很难使用,我肯定会用好的旧 Java 代码更快。
我认为可以存在的最好的编辑器是 Eclipse 的可视化编辑器。
唯一的缺点是我们在修改源代码时无法重新编辑可视化部分。我希望有一天我们会拥有一款在这方面可以与 Visual Studio 相媲美的工具。
我一直手工编写我的 UI。与屏幕构建器打交道并填写所有这些属性表的挫败感对我来说太多了。经过几个屏幕和一些研究后,我同样富有成效。
使用 NetBeans,我还成功开发了一个使用 NetBeans 的应用程序。它真的很棒,它可以在编写代码时帮助您。
由于 Swing 会自行生成一些代码,因此使用 Netbeans 确实很有帮助。
通过它,你总是可以提出问题和问题。
如果你去最新版本的版本会很好。
我个人会建议NetBeans Swing Builder。然而,如果您想要完全控制并深入了解 Swing 框架,我注意到徒手操作是最终选择。
当我使用 swing 时,我通常使用 NetBeans。
如果您更喜欢 Eclipse IDE,可以使用 Visual Editor 插件。
window builder pro是不错的选择,而且它也是免费的。
正如其他人所提到的,我对 Java SWING 应用程序的最佳体验是使用 NetBeans。NetBeans 有一个所见即所得的编辑器,代码会自动为您生成,然后受到保护,但是您可以添加自定义代码来添加最终用户可能有兴趣使用的侦听器和其他事件,例如按钮、文本表单和区域,以及其他不错的 GUI 工具。