找回密码
 立即注册

QQ登录

只需一步,快速开始

octoberfour

注册会员

8

主题

22

帖子

80

积分

注册会员

积分
80

活字格认证微信认证勋章

octoberfour
注册会员   /  发表于:2021-5-13 17:46  /   查看:3479  /  回复:6
spread表格第一列为序号值。
我的一个表是绑定数据源,目前的项目行数最多时为80多万行,一部分在10至30多万行。绑定数据源时数据再大,这一列列宽也没有问题能自动增加列宽。

但如果我将这个表中的数据进行处理后,生成另一个表,也是同样的行数,则得到的表,当行数大于等于1万行时,则序号值出现转行,感觉就难看了。
请教怎么设置这一列的列宽。



6 个回复

倒序浏览
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-5-13 17:54:27
沙发
可以直接设置宽度
  1. fpSpread1.ActiveSheet.Columns[0].Width =50;
复制代码


另外,可以设置适合的宽度,但是如果你这边数据行太多,可能计算比较慢
  1. fpSpread1.ActiveSheet.Columns[0].Width = fpSpread1.ActiveSheet.Columns[0].GetPreferredWidth();
复制代码
回复 使用道具 举报
octoberfour
注册会员   /  发表于:2021-5-13 18:08:18
板凳
你好,我用columns[0].width 还是setcolumnWidth(0,100),这里的0列是我能够填充数据的列。
但我说的序号列是表格中自动显示的行数值的列。如下图中有序号的最左边的列。 image.png749297485.png
回复 使用道具 举报
octoberfour
注册会员   /  发表于:2021-5-13 18:18:05
地板
刚才我发现自己也是多发了帖子,我想自己删除一个,但不知道怎么删。

还有一个问题,我用activesheet.setcolumnLabel(0,0,"ABC")  将表头从"A"改为了“ABC”,我能不能用类似于Excel VBA的单元格引用方式 ,如sheet1.cells[2,"ABC"].value
进行引用和赋值?或者用“ABC”先转换为列序号。再进行赋值。
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-5-14 09:23:07
5#
1.之前我也猜到你有可能是要设置行头,只是你提到了第一列,我以为说的是数据列,行头设置代码如下
  1.             fpSpread1.ActiveSheet.RowHeader.Columns[0].Width = 40;
  2.             
复制代码


2.可以给该列设置一个同样的Tag,然后通过Tag来获取列
  1. fpSpread1.ActiveSheet.SetColumnLabel(0, 1, "TEST");
  2.             fpSpread1.ActiveSheet.Columns[1].Tag = "TEST";
  3.             var col1=fpSpread1.ActiveSheet.Columns["TEST"];
复制代码

回复 使用道具 举报
octoberfour
注册会员   /  发表于:2021-5-14 09:35:04
6#
感谢解答。
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-5-14 09:52:04
7#
不客气
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部