java - Apache POI Excel 行颜色只有黑色并且不会改变

标签 java excel apache-poi

我正在尝试将 Excel 文件背景设为一行白色和其他水绿色。但由于某种原因,无论我做什么,颜色总是会变成黑色。

private void writeTable(Table table, Row row, CellStyle style){
    if(row.getRowNum() % 2 == 0) {
        style.setFillBackgroundColor(IndexedColors.AQUA.getIndex());
        style.setFillPattern(CellStyle.SOLID_FOREGROUND);
    }
    style.setWrapText(true);
    Cell cell = row.createCell(0);
    cell.setCellValue(table.index);
    cell.setCellStyle(style);

    //And it continues with other cells
}

无论我做什么,它都不会改变,即使我尝试 GREY_25_PERCENT 它完全是黑色的。 Here's picture of my excel file

最佳答案

这可能看起来违反直觉,但使用

style.setFillPattern(CellStyle.SOLID_FOREGROUND);

结合

style.setFillForegroundColor(IndexedColors.AQUA.getIndex());

设置单元格的背景颜色。

单元格背景本身可能也由两层组成:前景和背景。

关于java - Apache POI Excel 行颜色只有黑色并且不会改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46173966/

相关文章:

java - JTable 上的监听器出现问题(执行代码太多次)

excel - 用于更改过滤器的宏按钮

java - 删除重复行后无法使用 Apache POI 编写新的 Excel

java - 编译器为自动装箱生成什么代码?

java - 树遍历 - 中序位置

java - 从包中生成 QueryDsl Q 类

excel - 在 Excel VBA 中将一个变体分配给另一个变体

c# - 创建具有富文本和动态行控件的 ASP 应用程序

java - 是否可以使用 apache POI 裁剪/创建缩略图

java - 使用 Java 读取货币和百分比