import jxl.write.WritableCellFormat; //导入方法依赖的package包/类

/**

* @param workSheet to add the help to

* @param table to fetch metadata from

* @param startRow to start adding rows at

* @param helpTextRowNumbers - map to insert row numbers for each help field into

* @return the index of the next row to use

* @throws WriteException if any of the writes to workSheet failed

*/

private int outputHelp(WritableSheet workSheet, Table table, final int startRow, final Map helpTextRowNumbers) throws WriteException {

int currentRow = startRow;

// Title for the descriptions

Label dataLabel = new Label(0, currentRow, "Column Descriptions");

dataLabel.setCellFormat(getBoldFormat());

workSheet.addCell(dataLabel);

currentRow++;

int currentColumn = 0;

for (Column column : table.columns()) {

if (!column.getName().equals("id") && !column.getName().equals("version")) {

// Field name to go with the description

Label fieldName = new Label(0, currentRow, spreadsheetifyName(column.getName()));

fieldName.setCellFormat(getBoldFormat());

workSheet.addCell(fieldName);

// The type/width

String typeString = column.getType() + "(" + column.getWidth() + (column.getScale() == 0 ? "" : "," + column.getScale()) + ")";

Label fieldType = new Label(1, currentRow, typeString);

fieldType.setCellFormat(getStandardFormat());

workSheet.addCell(fieldType);

// The default

String defaultValue = additionalSchemaData.columnDefaultValue(table, column.getName());

Label fieldDefault = new Label(2, currentRow, defaultValue);

fieldDefault.setCellFormat(getStandardFormat());

workSheet.addCell(fieldDefault);

// The field documentation

workSheet.mergeCells(3, currentRow, 12, currentRow);

String documentation = additionalSchemaData.columnDocumentation(table, column.getName());

Label documentationLabel = new Label(3, currentRow, documentation);

WritableCellFormat format = new WritableCellFormat(getStandardFormat());

format.setWrap(true);

format.setVerticalAlignment(VerticalAlignment.TOP);

documentationLabel.setCellFormat(format);

workSheet.addCell(documentationLabel);

//If we've exceed the maximum number of columns - then output truncated warnings

if(currentColumn >= MAX_EXCEL_COLUMNS) {

Label truncatedWarning = new Label(13, currentRow, "[TRUNCATED]");

truncatedWarning.setCellFormat(getBoldFormat());

workSheet.addCell(truncatedWarning);

}

// We are aiming for 150px. 1px is 15 Excel "Units"

workSheet.setRowView(currentRow, 150 * 15);

// Remember at what row we created the help text for this column

helpTextRowNumbers.put(column.getName(), currentRow);

currentRow++;

currentColumn++;

}

}

// Group all the help rows together

workSheet.setRowGroup(startRow + 1, currentRow - 1, true);

// Some extra blank space for neatness

currentRow++;

return currentRow;

}

java wrap方法_Java WritableCellFormat.setWrap方法代码示例相关推荐

  1. java五子棋棋盘_java绘制五子棋棋盘代码示例

    本篇文章小编给大家分享一下java绘制五子棋棋盘代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 代码如下: import javax.imag ...

  2. java事件绑定,Java编程GUI中的事件绑定代码示例

    程序绑定的概念: 绑定指的是一个方法的调用与方法所在的类(方法主体)关联起来.对java来说,绑定分为静态绑定和动态绑定:或者叫做前期绑定和后期绑定 静态绑定: 在程序执行前方法已经被绑定,此时由编译 ...

  3. java 凌晨,java获取整点与凌晨的时间戳代码示例

    本篇文章小编给大家分享一下java获取整点与凌晨的时间戳代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. Java中获取整点时间戳 在实际的开发 ...

  4. java secretkey用法_Java SecretKeyFactory.generateSecret方法代码示例

    本文整理汇总了Java中javax.crypto.SecretKeyFactory.generateSecret方法的典型用法代码示例.如果您正苦于以下问题:Java SecretKeyFactory ...

  5. java set 包含_Java Set.contains()方法:判断Set集合是否包含指定的对象

    Java 集合类中的 Set.contains() 方法判断 Set 集合是否包含指定的对象.该方法返回值为 boolean 类型,如果 Set 集合包含指定的对象,则返回 true,否则返回 fal ...

  6. java show过时_Java中show() 方法被那个方法代替了? java编程 显示类中信

    你说的show是swing里的吧,在老版本中Component这个超类确实有show这个方法,而且这个方法也相当有用,使一个窗口可见,并放到最前面.在jdk5.0中阻止了这个方法,普遍用setVisi ...

  7. java方法重载和重载方法_Java 8的方法参考进一步限制了重载

    java方法重载和重载方法 方法重载一直是一个充满喜忧参半的话题. 我们已经在博客上介绍了它,并介绍了几次警告: 您会后悔对Lambdas应用重载! 保持干燥:方法重载 为什么每个人都讨厌操作员超载 ...

  8. java中断响应时间_Java多线程 sleep方法响应中断 sleep面试问题(与wait/notify的

    Java多线程 sleep方法响应中断 sleep面试问题(与wait/notify的 Java多线程 sleep方法响应中断 & sleep面试问题(与wait/notify的比较) 文章目 ...

  9. java 定义方法_java如何定义方法

    所谓方法,就是用来解决一类问题的代码的有序组合,是一个功能模块.(推荐:java视频教程) 一般情况下,定义一个方法的语法是:[修饰符] 返回值类型 方法名称(参数类型 参数名1,参数类型 参数名2, ...

最新文章

  1. 【转】【QT】 Threads, Events and QObjects
  2. logback日志模板与详解
  3. 分布式存储与服务器虚拟化,超融合架构与分布式存储+虚拟化软件的融合架构究竟区别有多大?...
  4. python process_Python Process/Thread 概念整理
  5. 机器学习算法(4)——SVM(以及拉格朗日对偶问题)
  6. jmap与jstat工具实战分析
  7. ubuntu 黑体_Ubuntu 10.04下安装字体最简单的方法
  8. 系统分析与设计的三个发展阶段
  9. 为什么 BI 软件都搞不定关联分析?带你分析分析
  10. 触摸式计算机屏幕,触控屏笔记本好不好 触摸屏笔记本优缺点分析【详细介绍】...
  11. Linux 两个服务器之间测试传输速度,测试两台服务器之间的网络带宽
  12. Hadoop3.2.0 HDFS HA ( Quorum Journal Manager )
  13. 基于Python SimpleHTTPServer.py的修改脚本:HTTP文件服务器,修正中文目录列表,支持视频文件在线播放
  14. flutter显示图标_flutter中密码输入如何切换隐藏/显示?
  15. BGP路由器协议排错教程:BGP 路由通告的排错
  16. linux挂载ntfs格式分区,Linux上挂载NTFS分区(Mount)
  17. 2022年电脑行业前景
  18. 我是怎么成为一名...的
  19. python中面向对象的缺点_python中的面向对象和面向过程
  20. STM32_光敏、温湿度传感的选择?

热门文章

  1. 使用JBehave,Gradle和Jenkins的行为驱动开发(BDD)
  2. 终极JPA查询和技巧列表–第1部分
  3. 什么是Spring Integration?
  4. ServletContext的学习笔记(属Servlet学习课程)
  5. 常用 ORACLE 函数的解读
  6. 已经创建了AWS EC2实例,Linux系统默认没有root用户,那么如何创建root用户并更改为root用户登录呢?
  7. 目前的计算机系统属于第三代电子计算机,计算机应用基础判断题
  8. 夸克浏览器怎么安装脚本_iOS 第一浏览器发布安卓版,除了真香我还能说什么...
  9. 【WebRTC---入门篇】(一)WebRTC整体架构
  10. python使用欧氏距离knn_python运用sklearn实现KNN分类算法