摆动框架,窗格或面板的用途是什么?

我读到JFrame是由几个窗格组成的……什么是窗格?为什么Jframe由窗格组成? 为什么有一个JPanel,而JFrame看起来与JPanel完全一样,但是有一个菜单栏和一个关闭按钮,那么JPanel的需求是什么? 任何人都可以清楚地向我解释这三个组成部分的定义和用途吗?

有顶级容器,如JFrame。 这些可以作为构建GUI的主窗口。

然后是中级容器。 这些必须放在其他容器中,它们不能自己存在。 它们可以帮助您组织组件或添加function。 JPanel是一个非常简单的容器,可以帮助您组织其他组件。 虽然JSplitPane添加了具有两个可变大小窗格的function。

当您拥有复杂的GUI时,您可能希望使用JPanel来组织GUI的各个区域,然后将每个面板添加到JFrame中。

在Java中,Swing API使用了Composite Design Pattern 。 这意味着您可以从其他对象组合非常复杂的对象,并且仍然以与简单对象相同的方式处理复合对象。 因此,您可以将JPanel放入JPanel,它仍然像JPanel一样。

可以把它想象成一个钓具盒(或针线包)。 它由一个大容器组成。 但是,不是将许多小物件放入这个大容器中并且以后难以管理,而是可以在大盒子内放置一些较小的隔间。 然后钩子和沉降片等进入隔间。 它更容易管理。 大盒子是JFrame,隔间是JPanels。