Изменение цвета ячеек для определенного определенного цвета

Я хочу изменить цвет ячейки на цвет, который я определяю с помощью java.awt.Color [r = 255, g = 255, b = 255] Я использовал код:

    Color sColor = new Color (200,0,0);
    XSSFColor userColor = new XSSFColor(sColor);    
     try {          
        CellStyle style = wb.createCellStyle();
        Font font = wb.createFont();
        font.setColor(userColor.getIndexed());
        style.setFont(font);
        cell.setCellStyle(style);
       } catch (NumberFormatException | NullPointerException ex) {
            //Handle NumberFormat and NullPointer exceptions here    
       } 

цвет всегда остается черным.

И вывод «System.out.print (userColor)»; это: (org.apache.poi.xssf.usermodel.XSSFColor@2e1b928). Фактически он изменяется в зависимости от значения, которое я печатаю в «новом цвете (200,0,0)»;

но вывод «System.out.print (userColor.getIndexed ()); всегда: (0).

какие-нибудь советы ?

java,excel,

0

Ответов: 1


0

Причина в том, что sColorэто определяется самим собой, поэтому у него нет соответствующего индекса

 font.setColor(userColor.getIndexed());//this line of code will not work

Проверьте API шрифта , нет способа использовать собственный цвет для установки шрифта, вы можете использовать только индексированный указатель по умолчанию .

Поэтому вам нужно изменить свой дизайн до обновления POI, чтобы поддержать его

введите описание изображения здесь

Java, Excel,
Похожие вопросы