Я пытаюсь установить собственный цвет для заполнения строки с помощью ConditionalFormatting на листе XSSF.
я пробовал
SheetConditionalFormatting 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
И ни один из этих двух не работает. Он не принимает XSSFColor.
Я видел этот отчет об ошибке и попробовал оба "хака", перечисленные там как работает, и снова не работает. Кроме того, документ не помог.
Я понимаю, что делаю:
setFillForegroundColor(new XSSFColor(new java.awt.Color(red,green,blue)));
Может работать для одной ячейки.
Большинству решений, с которыми я столкнулся, несколько лет, и они, похоже, не работают. Мне просто нужно, чтобы иметь возможность вводить пользовательский цвет RGB или Hex в качестве условного форматирования на листе XSSF.
Любая помощь?
Также я запускаю POI 3.9, чтобы избежать ошибок синтаксического анализа, таких как: это и это.