Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Setting foreground color for HSSFCellStyle is always coming out black

Status
Not open for further replies.

Ascalonian

Programmer
Jan 4, 2008
264
US
I am using POI to create an Excel spreadsheet in Java. I have the following code used for creating a header row:

Code:
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);

The issue I am having is that setting the fill background color on the cell always comes out black, no matter what color I pick. What am I doing wrong? If I don't use the "setFillPattern" line, no color shows up at all.
 
I got this to work. I had to set the foreground color to make the background color work (??).

So I changed:
Code:
cellStyle.setFillBackgroundColor(HSSFColor.GREY_25_PERCENT.index);

to:
Code:
cellStyle.setFillForegroundColor(HSSFColor.GREY_25_PERCENT.index);
and it worked!
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top