⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 groupheader.java

📁 Swing做报表 比较符合国内样式的报表。
💻 JAVA
字号:
package test.table;
import java.util.ArrayList;
import java.util.List;

import javax.swing.table.TableColumn;
import javax.swing.table.TableColumnModel;

public class GroupHeader {
	public static final String EMPTY_LABEL="EMPTY";
	public static boolean isEmpty(TableColumn tableColumn){
		return EMPTY_LABEL.equals(tableColumn.getHeaderValue());
	}
	private String name;
	private int begin=-1;
	private int end=-1;
	private List<GroupHeader> subHeaders=new ArrayList<GroupHeader>();
	public GroupHeader(String name){
		this.name=name;
	}
	public GroupHeader(String name,int index){
		this(name,index,index);
	}
	public GroupHeader(String name,int begin,int end){
		this.name=name;
		setSpan(begin,end);
	}
	
	public int getBeginColumn() {
		return begin;
	}	
	public GroupHeader setSpan(int begin,int end) {
		this.begin = begin;
		this.end = end;
		return this;
	}
	
	public int getEnd() {
		return end;
	}
	public String getName() {
		return name;
	}
	public GroupHeader setName(String name) {
		this.name = name;
		return this;
	}
	public GroupHeader addSubHeader(GroupHeader subHeader){
		subHeaders.add(subHeader);
		return this;
	}
	public ColumnGroup createColumnGroup(TableColumnModel tableColumnModel){
		ColumnGroup columnGroup = new ColumnGroup(name);
		if(begin>0){
			for(int i=begin;i<=end;i++){
				columnGroup.add(tableColumnModel.getColumn(i));
			}
		}

		for(GroupHeader groupHeader:subHeaders){
			columnGroup.add(groupHeader.createColumnGroup(tableColumnModel));
		}
		return columnGroup;
	}
	public static List<GroupHeader> groupHeaderListExample(){
		List<GroupHeader> list=new ArrayList<GroupHeader>();
		list.add(new GroupHeader("Name",1,2));
		list.add(new GroupHeader("Language",3).addSubHeader(new GroupHeader("others",4,5)));	
		return list;
	}
	public static List<GroupHeader> getHeaderList(){
		List<GroupHeader> list=new ArrayList<GroupHeader>();
		list.add(new GroupHeader("Name",1,2));
		list.add(new GroupHeader("Language",3).addSubHeader(new GroupHeader("others",4,5)));	
		return list;
	}
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -