2014-11-01 88 views
4

我有一個XSSF工作簿,我想在一組單元格中定義一個自定義背景顏色,並使用條件格式定義,但問題是隻有PatternFormatting類中的setFillBackgroundColor()方法接受型短的說法,不是一個XSSFColor這樣的:使用Apache POI進行條件格式化時的自定義背景顏色

PatternFormatting fill = rule1.createPatternFormatting(); 
fill.setFillBackgroundColor(new XSSFColor(new java.awt.Color(80, 80, 100)); 
fill.setFillPattern(PatternFormatting.SOLID_FOREGROUND); 

我可以做fill.setFillBackgroundColor(IndexedColors.RED.index),但我想自定義顏色。我怎樣才能做到這一點?。

+0

是'fill.setFillBackgroundColor(新XSSFColor(新java.awt.Color中(80, 80,100));'是自定義R = 80 G = 80 B = 100對不對?使用該問題有什麼問題? – Angga 2014-11-05 07:27:59

+0

@Angga問題是'PatternFormatting'類中的'setFillBackgroundColor()'方法只接受鍵入簡短參數,而不是'XSSFColor'。 – edkalel 2014-11-05 21:32:21

+0

相關: http://stackoverflow.com/questions/10912578/apache-poi-xssfcolor-from-hex-code – 2017-03-24 03:08:20

回答

0

對於那些仍在閱讀本文並且遇到問題的人,請求者在2014年描述過,您可能在3.13之前版本的Apache POI上。嘗試升級到至少3.13,你應該確實能夠做到:

fill.setFillBackgroundColor(new XSSFColor(new java.awt.Color(80, 80, 100)) 

(見這裏:https://bz.apache.org/bugzilla/show_bug.cgi?id=56774