Java JFrame容器类的用法(附带实例)
JFrame 是 Java 应用程序的图形用户界面容器,是一个带有标题行和控制按钮(最小化、恢复/最大化、关闭)的独立窗口。
JFrame 类包含支持任何通用窗口特性的基本功能,如最小化窗口、移动窗口、重新设定窗口大小等。JFrame 容器作为最底层容器,不能被其他容器所包含,但可以被其他容器创建并弹出成为独立的容器。
JFrame 类的继承关系如下图所示:
JFrame 类常用两种构造方法:
还可以使用专门的方法 getTitle() 和 setTitle(String) 获取或指定 JFrame 的标题。
创建窗体有两种方式:
下面通过一个案例来演示 JFrame 类的使用方法。继承 JFrame 类,创建一个空白窗口,标题设置为“JFrame 窗口演示”,背景色设置为红色。
注意:
通过调用 JFrame 的 getContentPane() 方法获得其默认的 Container 对象。该方法的返回类型为 java.awt.Container,仍然为一个容器。然后可以将组件添加到 Container 中,例如:
JFrame 类包含支持任何通用窗口特性的基本功能,如最小化窗口、移动窗口、重新设定窗口大小等。JFrame 容器作为最底层容器,不能被其他容器所包含,但可以被其他容器创建并弹出成为独立的容器。
JFrame 类的继承关系如下图所示:

JFrame 类常用两种构造方法:
- JFrame():构造一个初始时不可见的新窗体;
- JFrame(String title):创建一个标题为 title 的 JFrame 对象。
还可以使用专门的方法 getTitle() 和 setTitle(String) 获取或指定 JFrame 的标题。
创建窗体有两种方式:
- 直接编写代码调用 JFrame 类的构造器。这种方法适合使用简单窗体的情况;
- 继承 JFrame 类,在继承的类中编写代码对窗体进行详细地刻画。这种方式适合窗体比较复杂的情况。
下面通过一个案例来演示 JFrame 类的使用方法。继承 JFrame 类,创建一个空白窗口,标题设置为“JFrame 窗口演示”,背景色设置为红色。
import javax.swing.*; import java.awt.*; public class JFrameDemo extends JFrame { public JFrameDemo() { this.setTitle("JFrame 窗口演示 "); // 设置窗体标题 Container container = this.getContentPane(); // 获取当前窗体的 Container 对象 container.setBackground(Color.red); // 设置窗体背景色为红色 this.setVisible(true); // 设置窗体可见 this.setSize(350, 200); // 设置窗体大小 } public static void main(String[] args) { new JFrameDemo(); // 创建窗体 } }程序运行结果为:

注意:
- JFrame 类构造器创建的窗体不可见,需要在代码中使用setVisible(true)方法使其可见;
- JFrame类构造器创建的窗体默认的尺寸为 0×0 像素,默认的位置坐标为 [0,0],因此开发中不仅要将窗体设置为可见,而且还要使用 setSize(int x,int y) 方法设置 JFrame 容器的大小;
- 利用 JFrame 默认的 Container 对象可以设置窗体颜色或添加组件。
通过调用 JFrame 的 getContentPane() 方法获得其默认的 Container 对象。该方法的返回类型为 java.awt.Container,仍然为一个容器。然后可以将组件添加到 Container 中,例如:
Container contentPane=this.getContentPane(); contentPane.add(button); // button为一命令按钮上面两条语句可以合并为一条:
this.getContentPane().add(button);