我正在使用POI api。现在我的问题是我无法将单元格文本垂直对齐顶部。我正在使用getCellStyle().setAlignment(HSSFCellStyle.VERTICAL_TOP)
来设置对齐方式。
然而,当我打开表格时,它没有受到影响。
答案 0 :(得分:25)
如果出现此问题,您会感到惊讶,但要在POI中将样式设置为垂直对齐,您应该使用 setVerticalAlignment()
功能而不是setAlignment()
。例如:
XSSFCellStyle styleSubHeader = (XSSFCellStyle) wb.createCellStyle();
styleSubHeader.setVerticalAlignment(CellStyle.VERTICAL_CENTER);
答案 1 :(得分:8)
您可以使用此代码:
style.setVerticalAlignment(VerticalAlignment.TOP);
答案 2 :(得分:5)
XSSFWorkbook wbOut = new XSSFWorkbook();
CellStyle style = wbOut.createCellStyle();
style.setVerticalAlignment(HSSFCellStyle.VERTICAL_TOP);
cell.setCellStyle(style);
答案 3 :(得分:2)
此实现
style.setVerticalAlignment(HSSFCellStyle.VERTICAL_TOP)
已弃用,请使用:
org.apache.poi.ss.usermodel.CellStyle.setVerticalAlignment(VerticalAlignment.CENTER);
答案 4 :(得分:-4)
style = wb.createCellStyle();
style.setFillForegroundColor(IndexedColors.ORANGE.getIndex());
style.setFillPattern(CellStyle.SOLID_FOREGROUND);
cell = row.createCell((short) 2);
cell.setCellValue("X");
cell.setCellStyle(style);