尝试执行以下代码时:

Colour selectedColour = Colour.WHITE;
myWritableCellFormat.setBackground(selectedColour);

我收到此异常:
jxl.write.biff.JxlWriteException: Attempt to modify a referenced format

为什么是这样?作为参考,我在这两行之前使用了相同的对象来编写具有另一种颜色的单元格。这重要吗?

最佳答案

如果要更改其他单元格的颜色,则需要创建其他WritableFont对象,并必须传递给WritableCellFormat构造函数。

即每次您需要为WritableFont,WritableCellFormat类创建新对象时。

WritableFont font = new WritableFont(WritableFont.createFont("Calibri"), 11);
WritableCellFormat format = new WritableCellFormat(font);
format.setBackground(Colour.LIGHT_GREEN, Pattern.SOLID);

10-02 10:07