gpt4 book ai didi

java,无法使用正确的颜色为单元格着色,apache poi

转载 作者:行者123 更新时间:2023-11-30 04:00:42 25 4
gpt4 key购买 nike

我想用3种不同的颜色给3组不同的列着色,这个方法用于添加颜色:

public static void addCellStyles(CellStyle stylex, CellStyle styley, CellStyle stylez){

stylex.setFillBackgroundColor(IndexedColors.LIGHT_GREEN.getIndex());
stylex.setFillPattern(CellStyle.SOLID_FOREGROUND);
stylex.setAlignment(CellStyle.ALIGN_CENTER);
stylex.setVerticalAlignment(CellStyle.VERTICAL_CENTER);

styley.setFillBackgroundColor(IndexedColors.LIGHT_ORANGE.getIndex());
styley.setFillPattern(CellStyle.SOLID_FOREGROUND);
styley.setAlignment(CellStyle.ALIGN_CENTER);
styley.setVerticalAlignment(CellStyle.VERTICAL_CENTER);

stylez.setFillBackgroundColor(IndexedColors.LIGHT_CORNFLOWER_BLUE.getIndex());
stylez.setFillPattern(CellStyle.SOLID_FOREGROUND);
stylez.setAlignment(CellStyle.ALIGN_CENTER);
stylez.setVerticalAlignment(CellStyle.VERTICAL_CENTER);
}

我将 CellStyles 分配给主函数中的各个单元格由于某种原因,细胞被染成黑色,我似乎找不到任何问题谁能帮助我

最佳答案

讽刺的是,POI/Excel 中的背景颜色是前景色。

尝试这样:

XSSFCellStyle style1 = workbook.createCellStyle();
style1.setFillForegroundColor(new XSSFColor(new java.awt.Color(128, 0, 128)));
style1.setFillPattern(CellStyle.SOLID_FOREGROUND);
cell.setCellStyle(style1);

或者根据您的情况简单地:

stylex.setFillForegroundColor(IndexedColors.LIGHT_GREEN.getIndex());
stylex.setFillPattern(CellStyle.SOLID_FOREGROUND);

并且不要忘记为单元格指定样式。如果您只是从三个不同的单元格中获取初始样式,它可能会指向工作簿中的相同样式对象。如果您想要新样式,则必须在工作簿中创建它并将其分配给单元格(请参阅我的示例)。

关于java,无法使用正确的颜色为单元格着色,apache poi,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22061790/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com