sheetViews 介绍
之前的文章中介绍过 bookViews, 其实当你每次创建一个 bookView 的时候, 一定会有一个 sheetView 与之对应。
sheetViews 在 OOXML 中的定义如下:
从定义中可以看到, sheetViews 下面是可以有多个 sheetView 的。 minOccurs: 1 maxOccurs: unbounded 这两个属性表示, sheetVies 下面 sheetView 的个数至少为 1 个, 最大无限制。
正常情况我们打开一个 Excel 只有一个 sheetView, 当你创建一个新的窗口的时候, 这里也会新增一个 sheetView 元素。
从上面 Excel 的实际数据存储可以看出, 每一个 sheetView 肯定都有一个 workbookView 存在。 表示的含义就是这个 sheetView 所属的 workbookView 是哪个。
常见属性
pane
pane 里面也有几个比较重要的属性:
xSplit
: 它是一个整数值,表示在哪个列索引处分割窗格。例如,如果xSplit
为 1,那么第一列将被固定,当您向右滚动时,它将保持可见。ySplit
: 是一个整数值,表示在哪个行索引处分割窗格。例如,如果ySplit
为 2,那么前两行将被固定,当您向下滚动时,它们将保持可见。topLeftCell
: 属性用于指定窗格左上角的单元格引用。当同时设置xSplit
和ySplit
时,topLeftCell
将指定右下窗格的左上角单元格。这样可以确保正确的滚动行为以及窗格之间的对齐。activePane
: 属性用于指定当前活动的窗格。当您在工作表中设置多个窗格时(例如,通过设置xSplit
和/或ySplit
),activePane
属性用于确定哪个窗格具有焦点。具有焦点的窗格是用户可以进行单元格选择和编辑的窗格。activePane
可以采用以下值:- topLeft:表示左上窗格是活动窗格。
- topRight:表示右上窗格是活动窗格。
- bottomLeft:表示左下窗格是活动窗格。
- bottomRight:表示右下窗格是活动窗格。
topLeftCell
sheetView 下面的 topLeftCell 用于指定工作表当前可见的左上角单元格。 举个例子:
在这个图中, 左上角的单元格为 U309。 所以此时的 sheetView 的 topLeftCell 值等于 U309。 还是这个图中的例子, 上面的 pane 中的 xSplit = 15, ySplit = 5。
showGridlines
是否展示网格线。
workbookViewId:
整数,表示与工作簿视图关联的工作表视图。通常,此值设置为 "0",表示与第一个工作簿视图关联。