导出模板设置其中某一列下拉选

导出模板设置其中某一列下拉选

	 * 设置下拉选
	 */
	for (int i =0 ;i <headers.length;i++){
		String header = headers[i];
		if (header.equals("电站简称")){
			String[] toBeStored = itemNameList.toArray(new String[itemNameList.size()]);
            //toBeStored要下拉的数据,500代表多少行需要下拉
			setHSSFValidation(sheet, toBeStored, 2,500,i,i);
		}
	}
	/**
 * 设置某些列的值只能输入预制的数据,显示下拉框.
 * @param  sheet  模板sheet页(需要设置下拉框的sheet)
 * @param  textlist 下拉框显示的内容
 * @param firstRow  添加下拉框对应开始行
 * @param endRow    添加下拉框对应结束行
 * @param firstCol  添加下拉框对应开始列
 * @param  endCol    添加下拉框对应结束列
 * @return HSSFSheet 设置好的sheet.
 */
public static HSSFSheet setHSSFValidation(HSSFSheet sheet, String[] textlist, int firstRow, int endRow, int firstCol, int endCol){
	// 设置数据有效性加载在哪个单元格上,四个参数分别是:起始行、终止行、起始列、终止列
	CellRangeAddressList regions = new CellRangeAddressList(firstRow,endRow, firstCol, endCol);
	// 加载下拉列表内容
	DVConstraint constraint = DVConstraint.createExplicitListConstraint(textlist);
	// 数据有效性对象
	HSSFDataValidation data_validation_list = new HSSFDataValidation(regions, constraint);
	sheet.addValidationData(data_validation_list);
	return sheet;
}
posted @   小侯学编程  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示