8

我创建了一个相当大的 Java GUI 应用程序,其中包含许多表单窗口,其中的设置被锁定在 .form 文件中。我想知道是否有任何方法可以将这些 .form 文件转换或重构为我可以修改的真实 Java 源代码?

GUI 是使用 Netbeans 6.5 创建的。

4

3 回答 3

6

我的理解是“.form”文件仅由 Netbeans GUI 构建器用于跟踪 GUI 组件的位置。当您在设计视图中添加组件时,Netbeans 会自动更新实际的源 (.java) 文件。实际上,您可以直接修改这些 .java 文件,例如更改按钮上的标签,但如果您在 Netbeans 中执行此操作,它将使用 .form 文件自动重新生成源文件,从而破坏您的手动更改。

根据我的经验,一旦您决定手动修改 .java 文件,.form 文件就会变得不同步,您将无法再正确使用 Netbeans GUI 构建器。

于 2009-04-23T19:55:32.757 回答
4

kazanaki 是对的,生成的 java 文件可以修改,但生成的 .java 文件是出了名的混乱、庞大且难以解释。此外,如果不渲染 matisse 无用,您无法更改某些内容(如生成的 .java 文件中的注释中所述),因为它希望文件以某种方式包含内容。话虽这么说,如果您小心不要踩到马蒂斯的脚趾,您可以编写代码并且它不会触及您的代码,这很好。

Outlaw 也是对的,如果你改变任何已经在马蒂斯看来的东西,它就会被覆盖。您在 matisse 之外所做的任何更改都必须在 matisse 用于生成代码的 xml 所涵盖的任何元素之外。

我以前尝试过这种事情,但成功有限,最终只是重写了界面以避免这些令人发狂的头痛。

于 2009-04-23T20:03:17.760 回答
1

我可以编辑源代码,我发现了解决方案。问题是我在 GUI 构建器中使用了“AbsoluteLayout”。Netbeans 在 .form 文件中创建了一些隐藏的 AbsoluteLayout 类。如果我删除了 .form 文件,项目将不再构建。解决方案是将表单更改为“FreeForm”布局,然后我可以删除 .form 文件并删除 GUI 构建器注释。

谢谢你们的帮助,我给你们两个+1。

于 2009-04-24T09:00:48.063 回答