为了账号安全,请及时绑定邮箱和手机立即绑定

关于Powerbuilder6中Datawindow column object问题,具体如下所示

关于Powerbuilder6中Datawindow column object问题,具体如下所示

忽然笑 2021-11-19 15:11:05
1. 假设在Datawindow中,有a,b,c 3个columnobject, a的数据从dropdowndw拿回来, 现在我希望只在a选取不同结果时,出现一个messagebox提示, 而b, c不理会....请问应该怎样检查,还有应该在那一个event内检查?(itemchanged, itemfocuschanged, editchanged??)2. a的数据从dropdowndw拿回来(拿回来时会有people,salary, workingplace 3个column的数值,可是在设置Display column和Data column时,只能显示其中一个column, 我希望使用dw_1.getitemstring(1, 'a') 时可以拿到people和salary的数值, 请问应该如何设置?
查看完整描述

2 回答

?
拉风的咖菲猫

TA贡献1995条经验 获得超2个赞

1.在itemchanged内写代码
choose case dwo.name
case 'a'
...........
messagebox('','')
end choose
2.获取资料dw_1.getitemstring都只会只有一个返回值
你是想要达到什么样的功能?楼上的可以实现自动带出其他列的功能~

查看完整回答
反对 回复 2021-11-24
?
哔哔one

TA贡献1854条经验 获得超8个赞

分别解答:
1.根据你的描述这段代码写在ItemChanged事件中,先判断一下数值改变的列,再Messagebox一下,如果切换列触发的是ItemFocusChanged事件,如果编辑触发的是EditChanged事件,如果数值被修改并且失去焦点触发的就是ItemChanged事件;
2.要想实现此功能需要使用子数据窗。第一步,在DataWindow的Constructor事件中定义一个DataWindowChild,用GetChild实例这个对象,使用Transobject为这个子数据窗设置事务,Retrieve这个子数据窗;第二步,在DataWindow的Itemchanged事件中也是先定义一个DataWindowChild,用GetChild实例这个对象,使用GetItemString或者其他的GetItem函数来获取需要获取的数值,再SetItem到需要改变的字段上,就可以了。

查看完整回答
反对 回复 2021-11-24
  • 2 回答
  • 0 关注
  • 449 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信