StyleSet styleSet = writer.getStyleSet(); styleSet.setBorder(BorderStyle.NONE,IndexedColors.WHITE); CellStyle headCellStyle = styleSet.getHeadCellStyle(); headCellStyle.setFillPattern(FillPatternType.NO_FILL); writer.setStyleSet(styleSet);
时间: 2024-04-28 16:21:19 浏览: 143
这段代码使用了EasyExcel库中的API。首先,通过 `writer.getStyleSet()` 方法获取 `StyleSet` 对象,然后使用 `setBorder()` 方法将边框样式设置为 `BorderStyle.NONE`,边框颜色设置为 `IndexedColors.WHITE`,从而实现去掉单元格的边框。
接下来,使用 `getHeadCellStyle()` 方法获取表头单元格的样式,并使用 `setFillPattern()` 方法将填充模式设置为 `FillPatternType.NO_FILL`,从而实现表头单元格不填充背景色。
最后,使用 `setStyleSet()` 方法将修改后的 `StyleSet` 对象应用到写入器(`ExcelWriter`)中,从而实现样式设置的更新。
需要注意的是,使用 `setStyleSet()` 方法后,所有之前设置的样式都会失效,因此需要在修改样式后重新设置所有的样式。
相关问题
for(int i=0;i<t1.Rows.Count;i++) { //第二层表格 2行1列 Table t2 = t1.Rows[i].Cells[0].InsertTable(2, 1); //设置第二层表格的样式 t2.Alignment = Alignment.left; foreach (var row in t2.Rows) { foreach (var cell in row.Cells) { cell.SetBorder(TableCellBorderType.Left, new Border(BorderStyle.Tcbs_none, 0, 0, Color.White)); cell.SetBorder(TableCellBorderType.Right, new Border(BorderStyle.Tcbs_none, 0, 0, Color.White)); cell.SetBorder(TableCellBorderType.Top, new Border(BorderStyle.Tcbs_none, 0, 0, Color.White)); cell.SetBorder(TableCellBorderType.Bottom, new Border(BorderStyle.Tcbs_none, 0, 0, Color.White)); } } for(int j=0;j<t2.Rows.Count;j++) { t2.Rows[j].Cells[0].Paragraphs.First().Append("1"); } }
这段代码的作用是在一个表格中插入多个2行1列的子表格,并对子表格进行样式设置,包括设置边框以及文本内容。具体来说,第一个循环是遍历父表格的每一行,然后在每行的第一列插入一个2行1列的子表格,并设置子表格的左对齐;第二个循环则是遍历子表格的每一行,将每行的第一列设置文本内容为 "1"。另外,该代码还设置了子表格的边框样式为无边框。
public class CardPanel extends JPanel{ private Box leftbox; private Box rightbox; private Box rowbox; public CardPanel(){ super(); setPreferredSize(new Dimension(400, 0));//此方法设置大小才有效 Border lineBorder = new LineBorder(Color.DARK_GRAY, 2); setBorder(lineBorder); leftbox=Box.createVerticalBox(); rightbox=Box.createVerticalBox(); rowbox=Box.createHorizontalBox(); rowbox.add(leftbox); rowbox.add(Box.createHorizontalStrut(8)); rowbox.add(rightbox); add(rowbox); } public void addTitle(String title){//加字段的标签 } public void addEditComponent(){//加编辑的组件,参数考虑:字段,数据类型,是否可编辑 } }代码分析
这是一个 Java 类 `CardPanel`,继承了 `JPanel` 类。
构造函数 `public CardPanel()`:
1. 调用父类的构造函数 `super()`。
2. 设置了此 `JPanel` 的首选大小为 `new Dimension(400, 0)`。
3. 创建了一个 `Border` 对象 `lineBorder`,类型为 `LineBorder`,颜色为 `Color.DARK_GRAY`,粗细为 2。
4. 将此 `Border` 对象设置为此 `JPanel` 的边框。
5. 创建了三个 `Box` 对象 `leftbox`、`rightbox` 和 `rowbox`,分别为纵向的 `Box` 和横向的 `Box`。
6. 将 `leftbox` 和 `rightbox` 添加到 `rowbox` 中。
7. 在 `rowbox` 中每个 `Box` 之间添加了一个宽度为 8 的 `Box`(`Box.createHorizontalStrut(8)`)。
8. 将 `rowbox` 添加到此 `JPanel` 中。
方法 `public void addTitle(String title)`:
1. 加入一个标签(即标题)。
方法 `public void addEditComponent()`:
1. 加入一个编辑组件,参数考虑字段、数据类型、是否可编辑等。
阅读全文