Java基础入门 JFrame

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_40788630/article/details/82353786

相对于AWT而言Swing包中提供了更多的丰富的、快捷的、强大的GUI组件,而且这些组件都是java语言编写而成,因此Swing不依赖本地平台,可以真正做到跨平台运行。通常而言我们把AWT称之为重量级组件,Swing称之为轻量级软件,一般而言Swing组件都是在AWT组件名称前加J,但是需要注意的是JFrame、JWindow、JDialog都是需要依赖本地平台的,所以他们是重量级组件

JFrame

在Swing组件中最常见的就是JFrame,他和Frame一样是一个独立存在的顶级窗口,不能放置在其他容器中,JFrame支持所有窗口的操作,例如窗口最小化,设定窗口大小。

接下来代码为例:

import java.awt.FlowLayout;
import java.awt.event.*;
import javax.swing.*;

public class Main extends JFrame{
	public Main(){
		this.setTitle("JFrameTest");
		this.setSize(200,300);
		
		//定义一个按钮
		JButton bt =new JButton("按钮");
		
		this.setLayout(new FlowLayout());
		this.add(bt);
		bt.addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent e){
				Main.this.dispose();
			}
		});
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.setVisible(true);
	}
	public static void main(String[] args)throws Exception{
        new Main();
	}
}

在上例中实现了一个窗体,并在窗体中添加了一个按钮,从程序代码中我们会发现JFrame和Frame最大的区别是不需要添加窗体监听器,只需调用setDefaultCloseOperation()函数就开已实现窗口关闭功能。简单可以得出一个小结论就是JFrame更为简洁

猜你喜欢

转载自blog.csdn.net/qq_40788630/article/details/82353786