NetBeans - 如何将面板移动到新文件(代码太大)

发布于 2024-10-24 08:18:16 字数 399 浏览 1 评论 0原文

技术:NetBeans 6.9.1、SwingX 1.6.2

我有一个带有许多 JXPanels 的 JFrame(上面还有许多其他组件)。 initComponents() 方法由 NetBeans 保护(我猜是出于 GUI 同步的原因)。

我想将所有 JXPanels 移动到新的 .java 文件(由于 initComponents() 方法的大小 - 代码太大错误)并且仍然能够在可视化编辑器中编辑它们。我怎样才能做到这一点?如果没有像记事本这样的第三部分工具(相当不安全),是否有可能实现它?

还有其他想法如何轻松安全地拆分 initComponents() 以避免 代码太大 错误吗?

Technologies: NetBeans 6.9.1, SwingX 1.6.2

I have a JFrame with many JXPanels (with many other components on them). initComponents() method is guarded by NetBeans (for GUI sync reasons, I guess).

I'd like to move all of JXPanels to new .java files (due to size of initComponents() method - code too large error) and still be able to edit them in visual editor. How can I do that? Is there any possibility to achieve it without 3rd part tools like Notepad (quite unsafe)?

Any other ideas how can I split initComponents() easily and safely to avoid code too large error?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

×纯※雪 2024-10-31 08:18:16

真正的答案是不要在可视化编辑器中执行此操作。对于这么大的类,你将如何调试它?手动编写 Swing 代码绝对值得学习,即使它看起来是一项艰巨的任务。

重写时我不会过多查看您当前的代码,因为它会很讨厌并且是为了支持可视化编辑器而不是开发人员而编写的。相反,一次从头开始一个组件并构建您的 GUI。将其分成更小的班级,每个班级都有自己的职责。这将需要一些时间,但一旦完成,它将使未来的项目变得更加简单,并为您提供宝贵的调试知识。

The real answer is to not do this in a visual editor. With a class this big how are you going to debug it? It is definitely worth the learning curve to code Swing by hand, even if it appears to be too large of a task.

I would not look much at the your current code when re-writing it as it will be nasty and written to support the visual editor not a developer. Instead start from scratch one component at a time and build up your GUI. Break it out into smaller classes that have their own responsibilities. It will take some time but once you complete it, it will make future projects much simpler and will provide you valuable knowledge for debugging.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文