很多人有个问题,如下:
Workbook wb = new HSSFWorkbook();
CellStyle cs = wb.createCellStyle();
设置单元格背景色必须要设置填充模式, SOLID_FOREGROUND模式就是一种全填充模式,
调用填充模式方法 cs.setFillPattern( (short)temp ); 时,发现无法设置静态变量进去。
查看源码,发现枚举内的变量类型依旧是它自己(FillPatternType ),所以只能查看他们的代号,放进 cs.setFillPattern( short (temp) ); 方法内。
以下为模式名,他们的 int 型代号一次为 0,1,2,3。。。。。。。
使用时加上(short)强转就可以了。
例如:需要设置填充格式为 SOLID_FOREGROUND,那么代码是:
cs.setFillPattern( short (1) );
public enum FillPatternType {
/** No background */
NO_FILL,
/** Solidly filled */
SOLID_FOREGROUND,
/** Small fine dots */
FINE_DOTS,
/** Wide dots */
ALT_BARS,
/** Sparse dots */
SPARSE_DOTS,
/** Thick horizontal bands */
THICK_HORZ_BANDS,
/** Thick vertical bands */
THICK_VERT_BANDS,
/** Thick backward facing diagonals */
THICK_BACKWARD_DIAG,
/** Thick forward facing diagonals */
THICK_FORWARD_DIAG,
/** Large spots */
BIG_SPOTS,
/** Brick-like layout */
BRICKS,
/** Thin horizontal bands */
THIN_HORZ_BANDS,
/** Thin vertical bands */
THIN_VERT_BANDS,
/** Thin backward diagonal */
THIN_BACKWARD_DIAG,
/** Thin forward diagonal */
THIN_FORWARD_DIAG,
/** Squares */
SQUARES,
/** Diamonds */
DIAMONDS,
/** Less Dots */
LESS_DOTS,
/** Least Dots */
LEAST_DOTS;
}