JAVA JFrame 学习之 3种布局

本文重新探讨JAVA编程,聚焦于JFrame的基础布局管理器。通过代码示例展示了DO_NOTHING_ON_CLOSE、HIDE_ON_CLOSE、DISPOSE_ON_CLOSE和EXIT_ON_CLOSE四种关闭操作,并提供了一个简单的JFrame应用效果图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JAVA JFrame 学习之 3种布局

由于单位需要,又把之前学的JAVA重新拾起来了,先从最基本的布局学起来吧。
直接上代码

package com.liutong.swing.grid;
import javax.swing.;
import java.awt.
;

public class gridlayout extends JFrame {//必须把这个 JFrame 继承才能继续下去

/**
 * @param args
 */
JPanel jp1,jp2,jp3;
JButton jb1,jb2,jb3;
JLabel jl1,jl2;
public static void main(String[] args) {
	// TODO Auto-generated method stub
			new gridlayout();
}
//网格布局  
public gridlayout(){
	
	this.setTitle("整体是网格布局,第一个流布局,第二个是网格布局,第三个是边界布局");
	this.setLayout(new GridLayout(3,1,10,10)); 
	
	jp1=new JPanel();
	jp2=new JPanel();
	jp3=new JPanel();
	jl1=new JLabel("网格布局 GridLayout");
	String borderName [] = {"North","South","West","East","Center"};
	String border [] = {BorderLayout.NORTH,BorderLayout.SOUTH,BorderLayout.WEST,
            BorderLayout.EAST,BorderLayout.CENTER};
	/*jb1=new JButton("1");
	jb2=new JButton("2");
	jb3=new JButton("3");
	*/
	
	jp1.setLayout(new FlowLayout(1,10,10));/*    0代表左对齐,1,居中对齐, 2,代表右对齐,后面两个是 左右 上下的 距离   */

	jp2.setLayout(new GridLayout(4,3,3,3));/*这个代表是 表格布局 4行3列 最后两个是 左右 上下的距离*/
	jp3.setLayout(new BorderLayout());
	jp2.add(jl1);
	JButton []jb=new JButton[9];
	for(int i=0;i<jb.length;i++){
		
		jb[i]=new JButton(i+1+" ");
		jp2.add(jb[i]);
	}
	
	JButton []jb2=new JButton[9];
	for(int i=0;i<jb2.length;i++){
		
		jb2[i]=new JButton("流布局"+i);
		jp1.add(jb2[i]);
	}
	JButton []jb3=new JButton[5];
	for(int i=0;i<jb3.length;i++){
		
		//jb3[i]=new JButton(borderName[i]);
		jp3.add(new JButton(borderName[i]),border[i]);
	}
	
/*	jb3[0]=new JButton("West");
	jp3.add(jb[0],"West");*/
	/*jp1.add(jb1);
	jp1.add(jb2);
	jp1.add(jb3);
	*/
	
	
	
	this.add(jp1);
	this.add(jp2);
	this.add(jp3);
	this.setBounds(500, 500, 200, 800);//设置窗口弹出的位置和大小
	this.setVisible(true);
	this.setDefaultCloseOperation(2);//
/*

1.this.setDefaultCloseOperation(0);// DO_NOTHING_ON_CLOSE,不执行任何操作。
2.this.setDefaultCloseOperation(1);//HIDE_ON_CLOSE,只隐藏界面,setVisible(false)。
3.this.setDefaultCloseOperation(2);//DISPOSE_ON_CLOSE,隐藏并释放窗体,dispose(),当最后一个窗口被释放后,则程序也随之运行结束。
4.this.setDefaultCloseOperation(3);//EXIT_ON_CLOSE,直接关闭应用程序,System.exit(0)。一个main函数对应一整个程序。

	*/
	//this.setSize(200, 800);
	
	
	
}

}

这个是效果图

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值