我正在尝试使用XSSF工作表中的ConditionalFormatting设置自定义颜色以填充行。
我试过
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。
我看到了这个Bug Report,并试图在那里列出的“黑客”工作,并且再次,都没有工作。 the doc也没有帮助。
我明白这样做:
setFillForegroundColor(new XSSFColor(new java.awt.Color(red,green,blue)));
可能适用于单个细胞。
我遇到的大多数解决方案都是几年前似乎没有用。我只需要一个能够输入自定义RGB或Hex颜色作为 XSSF表中的条件格式。
任何帮助?
答案 0 :(得分:0)
我刚刚创建了一个for loop
来为每种颜色(short
)创建一个新规则。它从62
左右逐渐消失,从那里到80
有几种不同的色调。
不完全习惯,但至少我可以将颜色附加到数字上。