在dw的itemchanged事件中通过if语句判断给一个字段赋值,不能实现

jianxin0724 2015-05-20 07:02:23
要实现的功能:在一个列表中选择“本县区”则 给赋值“地址1”,若选择“本市其他县区”则赋值“地址2”
代码:CHOOSE CASE dwo.Name
CASE'csrq'
ldt_csrq = This.Object.csrq[row]
ll_nl = Year(Date(ldt_rq)) - Year(Date(ldt_csrq))
This.Object.sznl[row] = String(ll_nl)
CASE 'brsy'
ls_brsy = This.Object.brsy[row]
if ls_brsy ='本县区' then //or
This.Object.xzzs[row] ='四川1'
elseif ls_brsy='本市其他县区' then
This.Object.xzzs[row] ='四川2'
end if
end choose
问题:我选择本县区不能赋值1,先选择本县区,在选择本市其他县区,则是赋值1,也就是说,显示的是上一个选择的数据。
...全文
585 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
sdhp 2015-05-26
  • 打赏
  • 举报
回复
用楼上的方法 要么用data 要么accepttext一下
WorldMobile 2015-05-21
  • 打赏
  • 举报
回复
你的代码应该是在itemchanged事件里写的,如果取当前行当前列的值,你直接用data这个参数就行了, 如果用ls_brsy = This.Object.brsy[row],取的是上一次的值,因为本次录入的数据还未accepttext 把代码改成以下 CHOOSE CASE dwo.Name CASE'csrq' ldt_csrq = This.Object.csrq[row] ll_nl = Year(Date(ldt_rq)) - Year(Date(ldt_csrq)) This.Object.sznl[row] = String(ll_nl) CASE 'brsy' ls_brsy = data ////This.Object.brsy[row] if ls_brsy ='本县区' then //or This.Object.xzzs[row] ='四川1' elseif ls_brsy='本市其他县区' then This.Object.xzzs[row] ='四川2' end if end choose

604

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 控件与界面
社区管理员
  • 控件与界面社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧