Java 中的 JPanel vs JFrame
我正在学习Java gui。我学习创建窗口的方法是继承或扩展类,使用它很好,因为它包含窗口的所有属性。现在,如果我想向此窗口添加一些内容,我需要使用方法。但是今天我遇到了它也创建了一个窗口,我们可以通过以下方式添加内容。JFrame
JFrame
add()
JPanel
jpanelObjec.add()
这两种方法有什么区别?它们是否以某种方式相关?
我正在学习Java gui。我学习创建窗口的方法是继承或扩展类,使用它很好,因为它包含窗口的所有属性。现在,如果我想向此窗口添加一些内容,我需要使用方法。但是今天我遇到了它也创建了一个窗口,我们可以通过以下方式添加内容。JFrame
JFrame
add()
JPanel
jpanelObjec.add()
这两种方法有什么区别?它们是否以某种方式相关?
不应不必要地扩展类(仅当向类添加额外功能时)JFrame
JFrame
JFrame:
JFrame
扩展 和 。Component
Container
它是一个顶级容器,用于表示窗口的最低要求。这包括 s、可调整大小(是否可调整大小?)、标题栏、控件(允许最小化/最大化?)以及各种事件处理程序(如 等)。Border
JFrame
Event
windowClose
windowOpened
JPanel:
JPanel
扩展 , 和Component
Container
JComponent
它是一个泛型类,用于将其他 s 组合在一起。Component
当使用时,它很有用,例如 f.i 将组件添加到不同的 s,然后将其添加到 中创建 gui。在可重用性和可重用性方面,它将更易于管理。LayoutManager
GridLayout
JPanel
JFrame
Layout
它也很有用,当在Swing中绘画/绘画时,您将覆盖并且当然具有双重缓冲的全部乐趣。paintComponent(..)
Swing GUI 在没有顶级容器(如 (、 、 或 ))的情况下不能存在,而在没有 s 的情况下,它可能存在。JWindow
Window
JFrame
Frame
Applet
JPanel
JFrame
是窗口;它可以有一个或多个实例。 不是窗口。JPanel
JPanel
你需要一个Swing教程: