JFrame窗体是一个容器,它是Swing程序中各个组件的载体,可以将JFrame看作是承载这些Swing组件的容器。
JFrame在程序中的语法格式如下:
JFrame jf = new JFrame(title);
Container container=jf.getContentPane();
Swing组件的窗体通常与组件和容器相关,所以在JFrame对象创建完成后,需要调用getContentPane()方法将窗体转换为容器,然后在容器中添加组件或设置布局管理器。通常这个布局用来包含和显示组件。如果需要将组件添加到容器,可以使用Container类的add()方法。
例如:
container.add(new JButton("按钮"));
在容器中添加组件后,可以使用Container类中remove()方法将组件从容器中删除。
例如:
container.remove(new JButton("按钮"));
实例
import java.awt.*;
import javax.swing.*;
public class Demo extends JFrame{
public Demo() {
setBounds(100,100,200,200);//设置窗体坐标和大小
setDefaultCloseOperation(EXIT_ON_CLOSE);//设置窗体关闭规则,关闭窗口时关闭程序
Container c=getContentPane();//获取一个容器
JLabel l=new JLabel("这是一个标签");//创建一个JLabel标签
l.setFont(new Font("楷体",Font.BOLD,15));//设置标签文字字体、格式、大小
l.setForeground(Color.RED);//设置标签字体颜色
c.add(l);//将标签添加到容器中
setVisible(true);//设置窗体为可见
}
public static void main(String[] args) {
new Demo();
}
}
运行结果
创建窗体后,需要给窗体一个关闭方式,可以调用setDefaultCloseOperation()方法关闭窗体。常用的4种:
- DO-NOTHING-ON-CLOSE
- DISPOSE-ON-CLOSE
- HIDE-ON-CLOSE
- EXIT-ON-CLOSE
第一种:什么都不做就将窗体关闭;
第二种:释放窗体资源;
第三种:隐藏窗体,但不停止程序
第四种:隐藏窗体,并停止程序