当前位置: 首页 > news >正文

网站建设原则包括哪些方面网站开发公司需要什么资质

网站建设原则包括哪些方面,网站开发公司需要什么资质,59一起做网站,php 网站开发缓存有那几种前言#xff1a; 在使用easyExcel填充list时#xff0c;第一行存在合并单元格的情况下#xff0c;后面使用forceNewRow()填充的行却没有合并样式。 模板#xff1a; 填充后#xff1a; 自定义拦截器#xff1a; 根据官方文档的提示#xff0c;我们需要自定义拦截器来…前言 在使用easyExcel填充list时第一行存在合并单元格的情况下后面使用forceNewRow()填充的行却没有合并样式。 模板 填充后 自定义拦截器 根据官方文档的提示我们需要自定义拦截器来对单元格进行操作。拦截器MyHandler继承了easyExcel的AbstractMergeStrategy类并重写了merge方法用于定义具体的单元格合并逻辑。 merge方法主要用于检查当前单元格的上一行对应位置的单元格是否已被合并。如果已被合并则在当前单元格的位置创建一个新的合并区域并设置该区域的边框样式以此来保持填充list时合并区域的连续性。 public class MyHandler extends AbstractMergeStrategy {Overrideprotected void merge(Sheet sheet, Cell cell, Head head, Integer relativeRowIndex) {if(relativeRowIndexnull ||relativeRowIndex0){return;}int rowIndex cell.getRowIndex();int colIndex cell.getColumnIndex();sheetcell.getSheet();Row preRow sheet.getRow(rowIndex - 1);Cell preCell preRow.getCell(colIndex);//获取上一行的该格ListCellRangeAddress list sheet.getMergedRegions();for (int i 0; i list.size(); i) {CellRangeAddress cellRangeAddress list.get(i);if (cellRangeAddress.containsRow(preCell.getRowIndex()) cellRangeAddress.containsColumn(preCell.getColumnIndex())) {int lastColIndex cellRangeAddress.getLastColumn();int firstColIndex cellRangeAddress.getFirstColumn();int firstRowIndex cellRangeAddress.getFirstRow();CellRangeAddress cra new CellRangeAddress(rowIndex, rowIndex, firstColIndex, lastColIndex);sheet.addMergedRegion(cra);//设置合并区域cra的边框RegionUtil.setBorderBottom(BorderStyle.THIN, cra, sheet);RegionUtil.setBorderLeft(BorderStyle.THIN, cra, sheet);RegionUtil.setBorderRight(BorderStyle.THIN, cra, sheet);RegionUtil.setBorderTop(BorderStyle.THIN, cra, sheet);return;}}} } 定义好拦截器后我们要在填充时调用registerWriteHandler()将定义的拦截器作为参数。 填充后 单元格列合并 上面的效果已经满足了大部分人的需求。但可能有些人会有将第一列相同的item单元格进行列合并的需求那么我们只需要将拦截器中merge方法的新增合并区域cra修改如下。如果当前单元格的内容和上一行单元格内容相等我们要先移除上一行单元格的合并区域再和当前单元格组成新的合并区域而不能直接合并上一行单元格否则会报错 修改的部分调用了getCellContent()方法这个方法主要是来获取单元格的内容来进行比较的具体的实现如下 private String getCellContent(Cell cell) {if (cell null) {return null;}switch (cell.getCellType()) {case STRING:return cell.getStringCellValue();case NUMERIC:if (DateUtil.isCellDateFormatted(cell)) {return cell.getDateCellValue().toString();} else {return Double.toString(cell.getNumericCellValue());}case BOOLEAN:return Boolean.toString(cell.getBooleanCellValue());case FORMULA:return cell.getCellFormula();default:return ;} } 填充后 分页线 可以看到现在第一列的item相同内容的已经进行列合并了。但是我发现一个问题就是分页线错位了在填充完list之后分页线并没有随数据一起下移。所以我们需要在拦截器的merge方法中添加下面几行代码就可以重新设置分页线了。 下面代码将分页线设置在填充的list最后一行数据的下一行有其他需求的伙伴可以看情况自行修改 填充后 参考EasyExcel填充时合并单元格_easyexcel填充数据合并单元格-CSDN博客
http://www.pierceye.com/news/584787/

相关文章:

  • 课程网站课程资源建设北京吴勇设计工作室
  • 网站建设费用什么意思软件制作专业
  • 扬中本地网站外国做美食视频网站
  • 深圳手机网站制作价钱阜阳中国建设银行官网站
  • 廊坊建设网站企业安卓开发自学教程
  • 做网站虚拟主机配置汉沽手机网站建设
  • 设计一个网站先做哪些构造姑苏区建设局网站
  • 制造业营销外贸网站建设网站管理的内容包括
  • 看电视剧的免费网站app下载网站等保如何做
  • 如何做网站的营销中山vi设计公司
  • 搜索引擎网站使用的排名规则室内设计联盟网页版
  • php 手机网站开发手机端网站开发框架
  • 苏州电信网站备案浙江搜索引擎优化
  • 黄岛网站建设哪家好市体育局网站 两学一做
  • 上海建设银行网站转账记录吗外国网站做问卷调查挣钱
  • 深圳做购物网站十堰网络销售
  • 郑州企业网站优化多少钱百度竞价排名价格
  • js特效做的好的网站什么专业是做网站
  • 淄川响应式网站建设网站在国内服务器在国外
  • 施工企业市场经营工作思路及措施个人如何优化网站有哪些方法
  • 怎么做一个盈利网站义乌创博网络科技有限公司
  • 学校网站建设代码不重名的建筑公司名字
  • 网站开发模块的需求海外销售平台有哪些
  • 前端和后端的区别工资郑州网站优化怎样做
  • 小程序模板平台有哪些网站优化包括哪些内容
  • 免费建网站的好的移动端网站模板下载
  • 青岛网站优化排名视频源网站怎么做
  • 做网站找我二级学院网站建设方案
  • 知名网站建设公司 北京近期网络营销的热点事件
  • 网站开发产品经理网站例子