群里有兄弟问怎么把两个表格里相应单元格的数据相加在其中一个的相应位置显示。
首先,你最后相加显示的位置肯定是要在前两个单元格后,即先生成前两个单元格,再生成第三个单元格。
我们现在做个简单的示例:
比如,第一个单元格为a,第二个单元格为b,最后要显示相加的单元格为c,不管他们在不在一个表里,或网格里。
现在,在a的script里写上:v1 = this.getValue();
在b的script里写上:v2 = this.getValue();
在c的script里写上:如果是标签,写this.text = parseInt(v1)+parseInt(v2)
如果是数据(就是你插入的是数据),写:this.setDisplayValue(parseInt(v1)+parseInt(v2))
有几点注意的地方:
1、v1,v2前面不要加var,很多兄弟喜欢在前面加var,这样就是一个临时变量了,到另一个cell里是找不到的。这一点非常重要,你要把birt看成一个页面,我们在页面里写js.
2、v1,v2,根据js的操作定义,字符操作大于数学操作,所以默认是当字符串操作,即2+4=24,就在前面parseInt转化为数字。
3、这些script要写在oncreate方法里。
首先,你最后相加显示的位置肯定是要在前两个单元格后,即先生成前两个单元格,再生成第三个单元格。
我们现在做个简单的示例:
比如,第一个单元格为a,第二个单元格为b,最后要显示相加的单元格为c,不管他们在不在一个表里,或网格里。
现在,在a的script里写上:v1 = this.getValue();
在b的script里写上:v2 = this.getValue();
在c的script里写上:如果是标签,写this.text = parseInt(v1)+parseInt(v2)
如果是数据(就是你插入的是数据),写:this.setDisplayValue(parseInt(v1)+parseInt(v2))
有几点注意的地方:
1、v1,v2前面不要加var,很多兄弟喜欢在前面加var,这样就是一个临时变量了,到另一个cell里是找不到的。这一点非常重要,你要把birt看成一个页面,我们在页面里写js.
2、v1,v2,根据js的操作定义,字符操作大于数学操作,所以默认是当字符串操作,即2+4=24,就在前面parseInt转化为数字。
3、这些script要写在oncreate方法里。
更多内容,请访问 birt家园: birt.5d6d.com