Estoy usando POI para crear una hoja de cálculo de Excel en Java. Tengo el siguiente código utilizado para la creación de una fila de encabezado:Establecer color de primer plano para HSSFCellStyle siempre sale negro
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet("Report");
// some more code
HSSFRow row = sheet.createRow(0);
HSSFCell cell = row.createCell(cellNumber);
HSSFCellStyle cellStyle = wb.createCellStyle();
cellStyle.setFillBackgroundColor(HSSFColor.GREY_25_PERCENT.index);
cellStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
HSSFFont font = wb.createFont();
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
font.setColor(HSSFColor.WHITE.index);
cellStyle.setFont(font);
cell.setCellStyle(cellStyle);
El problema que estoy teniendo es que el establecimiento del color de relleno de fondo de la celda siempre sale negro, no importa de qué color cojo. ¿Qué estoy haciendo mal? Si no uso la línea "setFillPattern", no aparece ningún color.
Ahh, ya entiendo. Necesito cambiar el color de primer plano para cambiar el color de fondo - ¡genio! – Pakman
Ahorrado muchas horas de desesperación, ¿alguien sabe por qué funciona de esta manera? – CGK
Creo que la celda está pintada con un patrón que consta de píxeles de primer plano y fondo. Si usa SOLID_FOREGROUND, solo el píxel de primer plano está visible. Este color es diferente del color utilizado para representar texto, que se establece con la fuente. – Axel