| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 | /** * Created by CSL on 2017-05-19. * 通用的SpreadSheet创建显示接口,应用数据源绑定列、脏数据等。 * var colDef = [{name: "coeType", displayName: "类型", size: 100, hAlign: "center"},..,{} ]; * var datas = [{},..,{}]; */sheetObj = {    spread: null,    create: function (container, colDef, datas){        var me = this;        me.spread = new GC.Spread.Sheets.Workbook(container, {sheetCount:1});        me.spread.suspendPaint();        me.spread.options.tabStripVisible = false;        me.spread.options.showHorizontalScrollbar = false;        var sheet = me.spread.getSheet(0);        var sheetArea = GC.Spread.Sheets.SheetArea;        sheet.setRowCount(20, sheetArea.viewport);        sheet.setRowHeight(0, 30, sheetArea.colHeader);        sheet.autoGenerateColumns = false;        sheet.setDataSource(datas);        sheet.bindColumns(colDef);        me.setColAlign(colDef);        me.setRowHeight(datas, 25);        me.spread.resumePaint();        return me.spread;    },    setColAlign: function(colDef){        var me = this;        var sheet = me.spread.getSheet(0);        for (var col = 0; col < colDef.length; col++) {            var ha = colDef[col].hAlign;            var va = colDef[col].vAlign;            var area = sheet.getRange(-1, col, -1, GC.Spread.Sheets.SheetArea.viewport);            if (ha === "right") {                area.hAlign(GC.Spread.Sheets.HorizontalAlign.right);            } else if (ha === "center") {                area.hAlign(GC.Spread.Sheets.HorizontalAlign.center);            } else {                area.hAlign(GC.Spread.Sheets.HorizontalAlign.left);            };            if (va === "top") {                area.vAlign(GC.Spread.Sheets.VerticalAlign.top);            } else if (va === "bottom") {                area.vAlign(GC.Spread.Sheets.VerticalAlign.bottom);            } else {                area.vAlign(GC.Spread.Sheets.VerticalAlign.center);            };        };    },    setRowHeight: function(datas, hValue){        var me = this;        var sheet = me.spread.getSheet(0);        for (var row = 0; row < datas.length; row++) {            sheet.setRowHeight(row, hValue, GC.Spread.Sheets.SheetArea.viewport);        }    }};
 |