首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > PB >

将数据窗口作为变量返回到另一个窗口中,怎么保存

2013-07-04 
将数据窗口作为变量返回到另一个窗口中,如何保存?在现窗口w_1中打开另一个response窗口w_2,里面有一个数据

将数据窗口作为变量返回到另一个窗口中,如何保存?
在现窗口w_1中打开另一个response窗口w_2,里面有一个数据窗口dw_2,在这个窗口里作了一些增删改的操作,然后不想在这个窗口里保存数据,想将dw_2作为一个参数返回(定义了一个datawindow变量dw_2_inv,用CloseWithReturn(dw_2_in)返回)。

在w_1中,接收到dw_2_inv这个参数,如何在w_1中保存dw_2中的数据?
[解决办法]
//如果两个数据窗口结构一样可以用
getfullstate
setfullstate

//如果不一样可以用
setitem

//或者也可以用结构体来传值
[解决办法]
或者还可以用sharedata 
或rowscopy
或rowsmove

....方法很多,就是看你用哪个最方便了
[解决办法]
但是不可以把数据窗口作值传递,因为数据窗口只能引用传递,所属窗口一关,对象也就没了
[解决办法]
可以这么处理比较方便,在w_1里放一下数据窗口(可以隐藏起来),把数据窗口作为参数传递给响应式窗口w_2(用sharedata),然后在w_2里进行增删改操作,然后关闭后,在w_1里做保存即可

这种方法比较方便
[解决办法]

引用:
如果不用隐藏式的dw,用datastore行不行?还有一个问题,sharedata函数的primary datawindow,是否可以是datastore, 我知道 secondary datawindow可以是datastore,但不知道primary dw 是否可以是datastore?

应该可以的,试一下不就晓得了
[解决办法]
引用:
如果不用隐藏式的dw,用datastore行不行?还有一个问题,sharedata函数的primary datawindow,是否可以是datastore, 我知道 secondary datawindow可以是datastore,但不知道primary dw 是否可以是datastore?


可以用datastore,但建议你用datawindow,调试起来容易

调试都成功后,你也可以再把datawindow换成datastore
[解决办法]
其实可以换个思路

在w_1里有一个数据窗口dw_2
然后,将dw_2做为参数传递
OpenWithParm(w_2,dw_2)

w_2窗口中有一个数据窗口,接受dw_2的参数,然后进行删除、增加等操作,在操作的同时,也将w_1.dw_2中对应的数据进行删除、增加等操作

然后,关闭w_2,回到w_1时,就可以保存数据操作了

热点排行