# bi.table_view ### 能处理静态宽度以及动态宽度的表 {% method %} [source](https://jsfiddle.net/fineui/mbazb80a/) {% common %} ```javascript BI.createWidget({ type: "bi.table_view", element: 'body', isNeedMerge: true, isNeedFreeze: true, freezeCols: [0, 1], mergeCols: [0, 1], columnSize: [100, 200, 300, 400, 500], items: [], header: [] }); ``` {% endmethod %} ## 参数设置 | 参数 | 说明 | 类型 | 默认值 | | ---------------- | ------------- | -------------------- | ----------------- | | isNeedMerge | 是否需要合并单元格 | boolean | false | | mergeCols | 合并的单元格列号 | array | [] | | mergeRule | 合并规则, 默认相等时合并 | function(row1, row2) | 默认row1 = row2 时合并 | | columnSize | 单元格宽度集合 | array | [] | | headerRowSize | 表头高度 | number | 25 | | footerRowSize | 表尾高度 | number | 25 | | rowSize | 普通单元格高度 | number | 25 | | regionColumnSize | 列项间的 | array | false | | header | 表头 | array | [] | | footer | 表尾 | array | false | | items | 子组件 | array | [] | ## 方法 | 方法名 | 说明 | 参数 | | ---------------------------- | ---------------- | ---------- | | resize | 调整表格 | — | | setColumnSize | 设置列宽 | columnSize | | getColumnSize | 得到列宽 | — | | getCalculateColumnSize | 获得计算后的列宽 | — | | setHeaderColumnSize | 设置表头的列宽 | columnSize | | setRegionColumnSize | 设置列项之间的间隙 | columnSize | | getRegionColumnSize | 获得列项之间的间隙 | — | | getCalculateRegionColumnSize | 获取计算后的列项之间的间隙 | — | | getCalculateRegionRowSize | 获取计算后的列项上下之间的间隙 | — | | getClientRegionColumnSize | 获取浏览器中显示的列项之间的间隙 | — | | getScrollRegionColumnSize | 获取横向滚动条宽度 | — | | getScrollRegionRowSize | 获取纵向滚动条宽度 | — | | hasVerticalScroll | 是否含有数值滚动条 | — | | setVerticalScroll | 设置纵向滚动距离 | scrollTop | | setLeftHorizontalScroll | 设置左到右横向滚动距离 | scrollLeft | | setRightHorizontalScroll | 设置右往左横向滚动距离 | scrollLeft | | getVerticalScroll | 获取纵向滚动距离 | — | | getLeftHorizontalScroll | 获取左到右横向滚动距离 | — | | getRightHorizontalScroll | 获取右往左横向滚动距离 | — | | getColumns | 获取列项 | — | | populate | 刷新内容 | rows | ## 事件 | 事件 | 说明 | | :------------------------------ | :------------------ | | BI.Table.EVENT_TABLE_AFTER_INIT | table初始化完成后触发 | | BI.Table.EVENT_TABLE_RESIZE | table大小调整时触发(窗口变化等) | | BI.Table.EVENT_TABLE_SCROLL | 滚动事件 | ---