0

我正在使用 jxl api 生成一个 excel 表,其中交替行突出显示,当我对 excel 的内容进行排序并手动排序时,单元格背景颜色混乱,通常这是因为我正在逐个单元格编写颜色单元格,无论如何,我在生成它时为excel的交替行着色,这样它不会影响内容的排序。

4

1 回答 1

0

您是否尝试过使用 RowView:

Sheet s = ...
Colour[] colorings = new Colour[]{Colour.GOLD, Colour.OCEAN_BLUE};
for(int i=0;i<s.getRows();i++){
  CellView rowView = s.getRowView(i);
  WritableCellFormat newFormat = new WritableCellFormat(rowView.getFormat());
  newFormat.setBackground(colorings[i%2]);
  rowView.setFormat(newFormat());
}

我认为这应该可以达到您正在寻找的效果。注意我已经复制了上面的现有格式,但是如果您还没有将格式应用于行,您可以创建两种格式并重复使用它们。唯一需要注意的是,我相信应用于特定单元格的任何格式都会覆盖视图格式,因此您可能需要确保将各个单元格格式化为具有默认颜色或自动颜色(我对此并不完全确定,因为我自己没试过)。

于 2010-05-27T14:52:04.317 回答