当前位置: 首页 > 知识库问答 >
问题:

带有java Apache POI的彩色标题单元格

贲高寒
2023-03-14

我想让标题行有不同的颜色。到目前为止,我只是对字体有不同的颜色,因为背景颜色不能像我希望的那样工作。我的输出文件应为xls格式。

   import org.apache.poi.xssf.usermodel.XSSFCellStyle;
   import org.apache.poi.xssf.usermodel.XSSFWorkbook;
   ...


    String[] mylmcol = {"EmplNo", "LMSurname", "LMFirstname"};
    String[] myusercol = {"UserID", "USRSurname", "USRFirstname"};
    String[] rolecol = {"Group", "Role"};
    String[] ackcol = {"ACKValue"};

    XSSFWorkbook workbook_cbk_output = new XSSFWorkbook();
    Sheet sheet_cbk_output = workbook_cbk_output.createSheet("UserList");

    Font LMheaderFont = workbook_cbk_output.createFont();
    LMheaderFont.setFontHeightInPoints((short) 12);
    LMheaderFont.setColor(IndexedColors.SEA_GREEN.getIndex());

    ...

    XSSFCellStyle headerCellStyleACK = workbook_cbk_output.createCellStyle();
    headerCellStyleACK.setFont(ACKheaderFont);
    //DOES NOT WORK:
    headerCellStyleACK.setFillBackgroundColor(HSSFColor.AQUA.index);
    headerCellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);

    Row headerRow_cbk = sheet_cbk_output.createRow(0);

    for (int i = 0; i < mylmcol.length; i++) {
        Cell cell = headerRow_cbk.createCell(i);
        cell.setCellValue(mylmcol[i]);
        cell.setCellStyle(headerCellStyleLM);
    }
    ...
    FileOutputStream OUTFILE = new FileOutputStream("Myoutput.xls");
    workbook_cbk_output.write(OUTFILE);
    OUTFILE.close();

我尝试了命令setFillBackgroundColor,但这是igno。有没有另一种给背景着色的方法?

共有1个答案

周和歌
2023-03-14

如果使用XSSF工作表/单元格样式,可以使用< code>XSSFColor而不是< code>HSSFColor。对我来说,它适用于:

XSSFCellStyle headingStyle = workbook.createCellStyle();
headingStyle.setFillForegroundColor( new XSSFColor( new java.awt.Color( 207, 207, 207 ) ) );
headingStyle.setFillPattern( CellStyle.SOLID_FOREGROUND );

并将其应用于单元格/行:

Row rowHeadingStyle = styleSheet.createRow( 0 );
rowHeadingStyle.setRowStyle( headingStyle );

这是将背景颜色设置为所需的值!

 类似资料:
  • 问题内容: 我想根据第1列中的值给表格单元格上色,如果值不等于第1列中的值,则颜色应为青色,但我的代码不起作用: 问题答案: 是否必须突出显示单元格的决定必须在TableCellRenderer中进行。它不能在JTable中进行。因此,(没有)没有理由要重写JTable中的方法。相反,您可以将列的CellRenderer设置为TableCellRenderer的自己实现。 在此示例中,列2和3接收

  • 我使用这段代码来最大化和恢复我的自定义表单。但是当窗体最大化时,它仍然可以拖动,我使用计时器来拖动窗体。

  • 试图获取特定标题下的所有td(单元格) HTML: 方法: 实际结果: java.lang.IndexOutOfBoundsException:索引0超出长度0的边界 预期结果: 返回一个

  • 本文向大家介绍highcharts 色彩,包括了highcharts 色彩的使用技巧和注意事项,需要的朋友参考一下 示例 在Highcharts中,有一个数组,其中包含图表系列的默认颜色。使用所有颜色后,将从头开始再次拉新颜色。 版本4.x和5.x的默认颜色是: 在Highcharts 3.x中,默认颜色为: ] 在Highcharts 2.x中,默认颜色为:            

  • Element 为了避免视觉传达差异,使用一套特定的调色板来规定颜色,为你所搭建的产品提供一致的外观视觉感受。 主色 Element 主要品牌颜色是鲜艳、友好的蓝色。 Brand Color #409EFF 辅助色 除了主色外的场景色,需要在不同的场景中使用(例如危险色表示危险的操作)。 Success #67C23A Warning #E6A23C Danger #F56C6C Info #90