Java基础入门 Swing中间容器

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

在Swing中不仅有JFrame、JDialog这样的顶级窗口,还拥有一些中间容器,这些容器不能单独存在,必须依存在顶级窗口中。最常见的是JPanel、JScrollPane。

JPanel:JPanel和AWT中的Panel组件使用方法基本一致,他是一个无边框不能被放大、移动、关闭的面板,它的默认布局管理器是FlowLayout,当然这是可以使用setLayout()方法重新设置的

JScrollPane :与JPanel不同的是,JScrollPane是一个带有滚动条的面板容器而且这个面板只能添加一个组件,如果想添加多个组件就必须先把多个组件添加到Panel中再将Panel添加到JScroollPane中

下面举例说明一下JScrollPane的方法

JScrollPane的构造方法及方法
方法声明 功能描述
JScrollPane() 创建一个空的JScrollPane面板
JScrollPane(Component view) 创建一个显示指定组件的JScrollPane面板,只要组件大小超过面板大小就会出现水平和垂直滚动条
JScrollPane(Component view,int vsbPolicy,int hsbPoliy) 创建一个显示指定容器的JScrollPane面板
import java.awt.*;
import javax.swing.*;

public class Main extends JFrame{
	public Main(){
		this.setTitle("PanelDemo");
		JScrollPane scrollPane=new JScrollPane();
		//设置水平进度条需要时出现
		scrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
		//设置垂直进度条一直出现
		scrollPane.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
		
		JPanel panel=new JPanel();
		panel.add(new JButton("按钮1"));
		panel.add(new JButton("按钮2"));
		panel.add(new JButton("按钮3"));
		panel.add(new JButton("按钮4"));
		for(int i=5;i<100;i++){
			panel.add(new JButton("按钮"+i));
		}
		
		//将JPanel面板添加在滚动面板上显示
		scrollPane.setViewportView(panel);
		//将滚动面板添加到窗体的中部(CENTER)
		this.add(scrollPane,BorderLayout.CENTER);
		
		//创建窗体可关闭按钮
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.setSize(400,250);
		this.setVisible(true);
	}
	public static void main(String[] args)throws Exception{
       new Main();
	}
}

猜你喜欢

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