为什么它被认为是糟糕的编程形式,将组件摆放到框架上而不是面板中?当我直接将组件添加到框架上时,并没有真正出现任何问题,所以我想知道为什么我看过的所有学习视频甚至是GUI Window Builder都安装了面板组件的地方Java Swing组件放置
1
A
回答
1
当您添加使用JFrame#add(Component)
将组件直接添加到框架,但实际上将其添加到框架的内容窗格中,该窗格是一个JPanel。
额外的面板允许更具体的细节,这就是为什么你可能会看到多个面板。我认为它会被折磨的主要原因是您应该分开维护“组件区域”(内容窗格)和框架(边框),以避免混淆。就我个人而言,我不在乎太多,更多的是个人喜好。
如前所述,JFrames与他们自己的内容窗格捆绑在一起,当使用JFrame#add(Component)
添加组件时使用它。如果您真的感兴趣,请查看该方法的源代码。
另一个问题是使用paint方法。如果您重写JFrame的绘画方法,则可能会影响边框;可以使用一个单独的面板
0
除了上述原因被避免的东西,另一个原因是,使用的JFrame的默认的contentPane,我们不能设置边框的components.Here an example
相关问题
- 1. 的Java Swing组件
- 2. java swing GroupLayout - 组件交换位置
- 3. Java Swing - 分组组件
- 4. Netbeans Java Swing组件冗余
- 5. Java swing组件被冻结
- 6. Java Swing和组件定位
- 7. Java Swing ghost/doubled组件?
- 8. Java swing组件序列化
- 9. 未显示Java Swing组件
- 10. Java Swing - 半透明组件
- 11. 建议Java Swing组件库
- 12. Java Swing MVC动态组件
- 13. Java swing组件实例化
- 14. Java/swing:控制台组件?
- 15. 的Java Swing组件刷新
- 16. Java Swing:居中组件
- 17. Java Swing ImageIcon,在哪里放置图像?
- 18. Java Swing组织
- 19. 将SWING组件放置在Java全屏应用程序中的最佳实践?
- 20. 与Swing组件
- 21. 如何将组件放在java swing中的图片上?
- 22. Java swing的文件浏览器组件
- 23. Swing Java组件可见性控件
- 24. 对Swing组件
- 25. 如何拖放自定义Swing组件
- 26. java swing组合框
- 27. Java Swing旋转和缩放
- 28. 放大Java Swing中的JPanel
- 29. 使用Swing Worker拖放Java
- 30. Java Swing - JLabel位置
感谢您的直截了当的答案:) – Moyo2k