swing组件-------面板组件(Jpanel)

面板组件(Jpanel)

为什么有?

基本的三种布局方式不能满足需求!就需要布局管理器的组合使用。如下图的布局


怎么用:一个界面只可以有一个JFrame,但可以有多个Jpanel。而Jpanel可以调用JFrame下的组件(如:JButton)

            即在JFrame的三大分布形式上放置Jpanel,然后在Jpanel上再采用三大分布形式。。。。(不过Jpanel的默认布局是流式布局)



/**
 * @author 司**
 * 功能:Jpanel的使用------混合分部管理器的使用
 * 1、继承JFrame
 * 2、定义需要的组件
 * 3、创建组件(构造函数中较好)
 * 4、添加组件
 * 5、设置窗体属性
 * 6、显示窗体
 */
package com.gui;

import java.awt.BorderLayout;
import java.awt.GridLayout;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Demo5 extends JFrame{
	//定义所需组件
	JPanel jPanel1,jPanel2;
	JButton jButton1,jButton2,jButton3,jButton4,jButton5,jButton6;
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Demo5 demo5=new Demo5();
	}
	
	public Demo5(){
		//创建组件
		jPanel1=new JPanel();
		jPanel2=new JPanel();
		
		jButton1=new JButton("西瓜");
		jButton2=new JButton("苹果");
		jButton3=new JButton("荔枝");
		jButton4=new JButton("葡萄");
		jButton5=new JButton("橘子");
		jButton6=new JButton("香蕉");
		
		
		//设置窗口外观属性
		//设置布局(默认为边界布局,采用默认)
		//窗体其他属性
		this.setTitle("网格布局管理器");
		this.setSize(300, 200);
		this.setLocation(100, 200);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.setResizable(false);
		
		
		//添加组件
		//添加Jpanel组件.和Jbutton
		this.add(jPanel1, BorderLayout.NORTH);
		this.add(jButton6, BorderLayout.CENTER);
		this.add(jPanel2, BorderLayout.SOUTH);
		//设置Jpanel的布局(默认为流式布局,采用默认)
		//添加按钮组件到jpanel也即Jframe中
		jPanel1.add(jButton1);
		jPanel1.add(jButton2);
		jPanel2.add(jButton3);
		jPanel2.add(jButton4);
		jPanel2.add(jButton5);
		
		//显示
		this.setVisible(true);
		


	}

}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值