Ich verwende POI, um eine Excel-Tabelle in Java zu erstellen. Ich habe die eine Kopfzeile verwendet folgenden Code für die Erstellung von:Die Vordergrundfarbe für HSSFCellStyle wird immer schwarz angezeigt
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);
Das Problem, das ich habe ist, dass auf der Zelle die Füllung Hintergrundfarbe Einstellung immer schwarz kommt, egal, welche Farbe ich wählen. Was mache ich falsch? Wenn ich die Zeile "setFillPattern" nicht verwende, wird überhaupt keine Farbe angezeigt.
Ahh, ich verstehe. Ich muss die Vordergrundfarbe ändern, um die Hintergrundfarbe zu ändern - Genie! – Pakman
Viele Stunden der Verzweiflung gerettet, weiß jemand, warum das so funktioniert? – CGK
Ich denke, die Zelle ist mit einem Muster aus Vordergrund und Hintergrund Pixel gemalt. Wenn Sie SOLID_FOREGROUND verwenden, sind nur die Vordergrundpixel sichtbar. Diese Farbe unterscheidet sich von der Farbe, die zum Rendern von Text verwendet wird, der mit der Schriftart festgelegt wird. – Axel