hur.cn - 华软网

 热门搜索

如何将传值给数据窗口,并且立刻显示出来!

  作者:未知    来源:网络    更新时间:2019/10/7
dec num,price1,sum
int  r

r = getrow(dw_1)
num = dw_1.getitemnumber(r, 4)
price1 = dw_1.getitemnumber(r, 3)
sum = num * price1
dw_1.setitem(r,5,sum)
要求:输入完num后,要马上显示出sum的值
现在的情况是输入完后要鼠标点一下‘sum’列才会显示数据



------华软网友回答------
你是写在itemchange事件吧!那样得移开焦点才能执行
如果在iemchanged 事件里
  
 dw_1.object.column[row] =....
这样写多简单

------华软网友回复------
直接用一个计算字段就能够了。
都不用写代码
------华软网友回复------
写在editchanged里吧,一个getitemxxx能够用data取代,

------华软网友回复------
To:jlwei888(血仍未冷__微软UFO)
如果在iemchanged 事件里
  
dw_1.object.column[row] =....
这样写多简单
请问写在哪一个事件里?
我应该这样写吗:dw_1.object.column[5] = sum
能否解释一下这条语句

------华软网友回复------
dec num,price1,s
int  r

r = getrow(dw_1)
num = dw_1.getitemnumber(r, 4)
price1 = dw_1.getitemnumber(r, 3)
sum = num * price1
dw_1.object.sum[5] =s
第2列输入num值后,第5列不会立刻显示出sum值
然则dw_1.object.sum[5] = 1,能够立刻显示出来,为什么?怎么修改?
------华软网友回复------
在datawindow中输入数据的时候,实际上是先把数据写在一个浮动的单行文本编辑器中

这样,pb系统就需要一个事件,来使在单行文本编辑器中的文本真正的写入的datawindow的字段中去。
而这个事件,通常有2中触发途径:1,回车;2,焦点转移到其余行或列

所以,你在列4中输入数据时候,第5行其实不会立刻获得值,但如果你按一下回车,就ok了
------华软网友回复------
增补,
除上面说得2种界面操作途径,另有个accepttext()方法
------华软网友回复------
dec num,price1,s
int  r

r = getrow(dw_1)
num = dw_1.getitemnumber(r, 4)
price1 = dw_1.getitemnumber(r, 3)
s = num * price1
dw_1.Object.sum[r] = s
在itemchanged事件中要在sum列随便输入一个数字,然后按回车才显示
在editchanged事件中,在sum列随便输入一个数字或字母都能够显示,但直接按回车不显示
在itemfocuschanged事件中,按Tab键就显示,按其余键没反应
另外accepttext()方法应该加在哪,怎么用?请指教
------华软网友回复------
自己顶一下
------华软网友回复------
editchanged和itemfocuschanged
两个事件都写不就完了?
------华软网友回复------
accepttext()
只用这个方法是达不到你的效果的.
你这个最好是用计算列,多简单啊!用不了这些代码,麻烦!
     
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。