找回密码
 立即注册

QQ登录

只需一步,快速开始

福仔心

注册会员

6

主题

23

帖子

196

积分

注册会员

积分
196
福仔心
注册会员   /  发表于:2016-7-21 17:18  /   查看:3956  /  回复:6
wijmo的大牛们,请问在一个sheet页面中有已知的几个按钮(ButtonCellType),我想再次加载该sheet页面的时候能变成ButtonCellType对象对其进行操作。有什么好的办法呢?我使用了sheet.getCellType(row,col),获取不到合并单元格的按钮。

6 个回复

倒序浏览
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-7-21 17:30:52
沙发
本帖最后由 dexteryao 于 2016-7-21 17:33 编辑

不是很明白您的需求,什么是变成ButtonCellType对象。
获取合并单元格的celltype一定要获取左上角的单元格。

我把您的帖子移到SpreadJS专区
回复 使用道具 举报
福仔心
注册会员   /  发表于:2016-7-21 17:49:28
板凳
dexteryao 发表于 2016-7-21 17:30
不是很明白您的需求,什么是变成ButtonCellType对象。
获取合并单元格的celltype一定要获取左上角的单元格 ...

var sels = sheet.getSelections();
    var sel = getActualCellRange(sels[0], sheet.getRowCount(), sheet.getColumnCount());
    sheet.addSpan(sel.row, sel.col, sel.rowCount, sel.colCount);// 合并单元格

    var searchResult = sheet.searchCellByTag("componentType",selCellType,false);
    var buttonId = "ButtonCell_"+(searchResult.length +1) ;
    var btnText = "按钮"+(searchResult.length +1);
    var b1 = new $.wijmo.wijspread.ButtonCellType();
    b1.text(btnText);
    sheet.setCellType(sel.row, sel.col, b1, $.wijmo.wijspread.viewport);
以上代码是我们自己写的,给单元格设置按钮。

在个这个b1添加一些方法。重新加载这个sheet页面的时候。想动态从sheet页面如何获取我之前放在单元中的buttonCellType对象 b1;

回复 使用道具 举报
福仔心
注册会员   /  发表于:2016-7-21 17:49:36
地板
dexteryao 发表于 2016-7-21 17:30
不是很明白您的需求,什么是变成ButtonCellType对象。
获取合并单元格的celltype一定要获取左上角的单元格 ...

var sels = sheet.getSelections();
    var sel = getActualCellRange(sels[0], sheet.getRowCount(), sheet.getColumnCount());
    sheet.addSpan(sel.row, sel.col, sel.rowCount, sel.colCount);// 合并单元格

    var searchResult = sheet.searchCellByTag("componentType",selCellType,false);
    var buttonId = "ButtonCell_"+(searchResult.length +1) ;
    var btnText = "按钮"+(searchResult.length +1);
    var b1 = new $.wijmo.wijspread.ButtonCellType();
    b1.text(btnText);
    sheet.setCellType(sel.row, sel.col, b1, $.wijmo.wijspread.viewport);
以上代码是我们自己写的,给单元格设置按钮。

在个这个b1添加一些方法。重新加载这个sheet页面的时候。想动态从sheet页面如何获取我之前放在单元中的buttonCellType对象 b1;

回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-7-22 08:27:38
5#
您好,就使用getCellType方法获取celltype

var b1 = new GcSpread.Sheets.ButtonCellType();
b1.text("11")
sheet.addSpan(1,1,2,2)

//set
sheet.setCellType(1,1,b1)

//get
sheet.getCellType(1,1)
回复 使用道具 举报
福仔心
注册会员   /  发表于:2016-7-22 17:26:16
6#
dexteryao 发表于 2016-7-22 08:27
您好,就使用getCellType方法获取celltype

var b1 = new GcSpread.Sheets.ButtonCellType();

感谢您的回复。
恩恩 这个问题已经解决,出现的问题是数据加载太慢,就执行了getCellType,所以没有获取到。

现在遇到一个新的问题,怎么让CheckBoxCellType加载时。默认就是选中的呢?

回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-7-25 08:44:44
7#
setValue true 就自动选中了

评分

参与人数 1满意度 +5 收起 理由
福仔心 + 5 很给力!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部