Ich versuche, eine benutzerdefinierte Farbe zum Füllen einer Zeile mit ConditionalFormatting in einem XSSF-Blatt festzulegen.BedingteFormatierung von benutzerdefinierten Farben in Apache POI XSSF
Ich habe
versuchtSheetConditionalFormatting sheetCF = sheet.getSheetConditionalFormatting();
ConditionalFormattingRule rule1 = sheetCF.createConditionalFormattingRule("MOD(ROW(),2)=0");
PatternFormatting fill1 = rule1.createPatternFormatting();
XSSFColor customColor = new XSSFColor(new byte[] {alpha, red, green, blue});
fill1.setFillForegroundColor(new XSSFColor(new java.awt.Color(128, 0, 128))); //1
fill1.setFillForegroundColor(customColor); //2
Und keiner der beiden letztgenannten Arbeit. Es akzeptiert keine XSSFColor.
Ich sah diese Bug Report und versuchte beide "hacks" dort als funktionierend aufgeführt, und wieder funktionieren beide nicht. Auch the doc war keine Hilfe.
Ich verstehe, dass zu tun:
setFillForegroundColor(new XSSFColor(new java.awt.Color(red,green,blue)));
für eine einzelne Zelle arbeiten.
Die meisten Lösungen, die ich gefunden habe, sind ein paar Jahre alt und scheinen nicht zu funktionieren. Ich brauche nur einen Weg, um eine benutzerdefinierte RGB- oder Hex-Farbe als ConditionalFormatting in einem XSSF-Blatt eingeben zu können.
Irgendwelche Hilfe?
Auch ich laufen POI 3.9 um zu vermeiden, Parsing Fehler wie: this und this.