Java布局管理器之插件(一)---JPanel

在图形用户界面编程中, 如果只是普通的组件布局, 我们用前面讲的三种布局管理器就可以解决,

但在比较复杂的布局要求时,就需要使用布局管理器的组合使用。

面板组件 (JPanel)
JPanel :面板组件,非顶层容器,一个界面只可以有一个 JFrame 窗体组件,但可以有多个JPanel 面板组件 ,

而 JPanel 上也可以使用 FlowLayout 、 BorderLayout 、 GirdLayout 等各
种布局管理器,这样可以组合使用达到较为复杂的布局效果。

 

下面我们举个例子:

/**
 * JPanel 测试
 * 多种布局管理器的使用
 */
package com.test1;

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

public class Demo8_5 extends JFrame{

	//定义小控件
	JButton jb1 = null;
	JButton jb2 = null;
	JButton jb3 = null;
	JButton jb4 = null;
	JButton jb5 = null;
	JButton jb6 = null;
	//定义面板
	JPanel jp1 = null;
	JPanel jp2 = null;
	
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		Demo8_5 demo8_5 = new Demo8_5(300, 200);

	}
	
	public Demo8_5(int x_dispSize, int y_dispSize)
	{
		//创建小控件
		jb1 = new JButton("香蕉");
		jb2 = new JButton("橘子");
		jb3 = new JButton("橙子");
		jb4 = new JButton("榴莲");
		jb5 = new JButton("苹果");
		jb6 = new JButton("葡萄");
		
		//创建JPanel
		jp1 = new JPanel();
		jp2 = new JPanel();
		
		//添加JButton到JPanel,JPanel默认是流式布局
		jp1.add(jb1);
		jp1.add(jb2);
		jp1.add(jb3);
		
		jp2.add(jb4);
		jp2.add(jb5);
		
		//把JPanel添加到主窗体
		this.add(jp1, BorderLayout.NORTH);
		this.add(jb6, BorderLayout.CENTER);
		this.add(jp2, BorderLayout.SOUTH);
		
		//设置窗体标题
		this.setTitle("JPanel测试");
		
		//设置窗体大小
		this.setSize(x_dispSize, y_dispSize);
		
		//设置窗体显示位置
		this.setLocation(500, 500);
		
		//设置关闭窗体时,关闭JVM
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		//设置窗体不可更改大小
		this.setResizable(false);
		
		//设置窗体可见
		this.setVisible(true);
	}

}

显示出来的效果如下:

Java布局管理器之插件(一)---JPanel_第1张图片

 

注意事项
1、 JPanel 是 JComponent 的子类;
2、属于容器类组件,可以加入别的组件;
3、默认布局管理器是流式布局 (FlowLayout)
 

你可能感兴趣的:(Java)