在透视分析中,希望指定从某一列开始设置列宽,可以通过宏代码实现。
使用宏之前的效果:
使用宏之后的效果:
注意:被修改列的宽度属性值不用修改。
类型 | 对象 | 事件 |
---|---|---|
ClientSide | INSIGHT | onRenderTable |
function main(insight) { //获取参数值 var starIndex = 0; //做修改的起始列,从0开始 var colWidth = "150px"; //修改的列宽大小 var rowIndex = 0; //行序号,序号从0开始,注:如果是2重表头的话,将0修改位1,3重表头将其修改为2,以此类推... modifyColumnWidth(insight, starIndex, colWidth, rowIndex); } function modifyColumnWidth(insight, starIndex, colWidth, rowIndex) { var grid = insight.grid; var maxCol = grid.getColCount(); //总列数 for (var m = starIndex; m < maxCol; m++) { var cell = grid.getCell(rowIndex, m); //获取表头列 cell.style.width = colWidth; cell.firstChild.style.width = colWidth; //设置列宽 //305版本需要添加以下代码 try { insight.elem_tablepanel.firstChild.firstChild.childNodes[m].style.width = colWidth; } catch (e) {} } } |
资源:migrate.xml