4

我从head first java中学习了 swing 基础知识和事件处理基础知识……然后我阅读了一些关于使用 netbeans 开发 Swing 应用程序的教程……

我喜欢它,因为我不必关心布局和东西......

但是我在其中一个论坛上读到,我应该正确地学习挥杆而不是直接使用 netbeans ......

这让我有点困惑......

请建议掌握 Swing 应用程序开发的最佳方法....

提前致谢

4

4 回答 4

4

好吧,我知道我会在这里与大多数人背道而驰;-)

手工编码 GUI 是一件令人头疼的事情。在我的书中,任何使这项任务更容易的事情都是一件好事。当您刚刚开始时,生成的 GUI 可以让您更快地启动和运行。

GUI 构建器处理真正重复的工作并阻止您做最常见的愚蠢事情。缺点是同样的方法也会阻止你做真正聪明的事情。最终,您将遇到无法通过 GUI 构建器完成的事情,您需要深入研究代码。因此,您不能将代码生成器视为不需要知道里面发生了什么魔法的黑匣子。至少,您需要白盒。让 GUI 构建器发挥它的魔力,但要了解它的魔力及其局限性。

通过生成一个非常简单的 GUI 来练习。浏览代码并了解它的作用。通过构建器进行更改,并查看生成的代码如何更改。尝试自己更改代码以确认您的理解是正确的。*

如果您有什么不明白的地方,请点击 JavaDocs、Swing Trail或浏览Java2S Swing 教程

如果您仍然遇到困难,请尝试Java RanchStackOverflow上的好心人。

* Netbeans 将生成的代码放在受保护的块中,不允许您直接编辑它们。但是,您可以在另一个编辑器中打开该文件以测试更改。此外,您可以使用窗口code中的选项卡做很多事情来影响代码生成。properties

于 2010-09-03T13:20:44.027 回答
1

这取决于你认为你的目标是什么。没有“完美”的方法可以让使用 Java 和 swing 感到舒适,它始终取决于您想要的结果。

大多数企业都依赖稳定性和速度,程序员需要快速稳定地编写代码。如果您手动编写复杂的界面,那么同时在速度和精度方面会变得很难看。就“它正在工作”而言,您永远无法编写比 netbeans gui builder 更好的代码。此外,一旦应用程序启动并运行,可能没有人会查看您的代码。

如果您想了解 Swing 只是为了了解它而没有更深的意图,我建议您在没有 netbeans 的情况下背诵它,因为您可能会比其他方式更快地熟悉它的大部分功能大约。

一方面,如果我想学习一些东西,我想从头开始学习,所以我可能会自己编写 swing-code,最后在我完全能够理解生成的内容时使用 netbeans 生成它。另一方面,如果我需要快速编写应用程序并且不需要支付任何费用来详细说明,我会简单地使用 netbeans。

于 2010-09-03T10:52:40.943 回答
1

我想你已经回答了自己......你想掌握摇摆应用程序的开发......你通过自动生成而不知道为什么或如何在我看来没有掌握的一切;)

于 2010-09-03T10:54:13.560 回答
1

如果你想成为大师,那么你至少应该知道如何徒手去做。此外,如果您将使用其他 gui 工具包,它也会对您有所帮助(gui 工具包的主要原理或多或少相同,恕我直言)。

于 2010-09-03T11:01:02.530 回答