日期:2014-05-16  浏览次数:20344 次

Swing组件学习代码示例之JSplitPane
JSplitPane的分割窗体,形式上有点像HTML里面的Frameset页面框架,也可以使用多个JsplitPane来嵌套实现复杂的窗口设置。

JSplitPane的构造器有5个分别是:
		// 创建一个默认的JSplitPane,该面板是一个分为左右两部分,且每一个部分都包含一个按钮的JsplitPane窗体。
		JSplitPane();
		
		// 创建一个指定方向的,且分割部分无组件的空JSplitPane。指定的方向可以是垂直分割或者水平分割。该常量值在JSplitPane中 
		JSplitPane(int newOrientation);
		
		// 创建一个指定方向和重绘方式的JSplitPane。
		JSplitPane(int newOrientation, boolean newContinuousLayout);
			
		// 在上一个构造函数的基础上传入分割面板的两个组件。
		JSplitPane(int newOrientation, boolean newContinuousLayout, Component newLeftComponent, Component newRightComponent);
		
		// 指定重绘方式和两个组件。
		JSplitPane(int newOrientation, Component newLeftComponent, Component newRightComponent);


然后是示例代码:

package org.lyl.d4;

import java.awt.BorderLayout;
import java.awt.Container;

import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JSplitPane;
import javax.swing.JTextPane;

public class JSplitPaneTest extends JFrame {

	private Container container = null;
	private JSplitPane splitPane = null;

	public JSplitPaneTest() {
		// 设置窗体基本信息
		setTitle("JSplitPane练习");
		setSize(600, 400);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		container = getContentPane();

		// 创建一个滚动面板用来添加一个JTextPane
		JScrollPane scroPane = new JScrollPane(new JTextPane());

		// 创建一个垂直方向上分割的,连续布局(连续重绘)的JSplitPane,并在构造期间设置了上下组件,其中下面的组件还是一个具有默认内容的JSplitPane
		splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT, true, scroPane,
				new JSplitPane());

		// 设置中间分割条大小
		splitPane.setDividerSize(20);

		// 设置分割条位置
		splitPane.setDividerLocation(100);

		// 在分割条上添加小三角按钮可以实现JSplitPane左右/上下组件的快速展开或折叠。
		splitPane.setOneTouchExpandable(true);

		// 添加至内容面板
		container.add(splitPane, BorderLayout.CENTER);
	}

	public static void main(String[] args) {
		new JSplitPaneTest().setVisible(true);
	}
}