在数据窗口中录入数据,点击dddw城市,在县城dddw中显示对应城市的县城,选中县城dddw时,乡镇dddw中列出对应的乡镇名称,实现代码如下:
在数据窗口的ItemFocusChanged事件中,代码如下:
Integer rtncode_county,rtncode_xiangzhen
String ls_nowFld,ls_cd_city,ls_cd_county,ls_sql_county,ls_sql_xiangzhen
DataWindowChild fld_child_county,fld_child_xiangzhen
rtncode_county = dw_1.GetChild(“j_7”,fld_child_county) //获得j_7(县城)字段下拉数据窗口的句柄
rtncode_xiangzhen = dw_1.GetChild(“j_8”,fld_child_xiangzhen) //获得j_8(乡镇)字段下拉窗口句柄
If rtncode_county = -1 Then MessageBox(“错误!”, “不是下拉数据窗口!”)
If rtncode_xiangzhen = -1 Then MessageBox(“错误!”, “不是下拉数据窗口!”)
fld_child_county.SetTransObject(SQLCA) //设置事务对象
fld_child_xiangzhen.SetTransObject(SQLCA) //设置事务对象
ls_sql_county = Lower(fld_child_county.GetSQLSelect())// 获得DDDW的SQL语句
ls_sql_xiangzhen = Lower(fld_child_xiangzhen.GetSQLSelect())// 获得DDDW的SQL语句
//* 去除Sql 语句中的Where条件子句, 如原Sql 语句中须有Where条件子句,此处则需进行较
//file://复杂的处理,应视具体情况而定。
if Pos(ls_s

在PowerBuilder数据窗口中,通过DDDW(下拉数据窗口)实现了城市选择后,县城和乡镇DDDW自动关联显示的功能。当城市改变时,县城DDDW更新其SQL查询,基于选定城市过滤数据;同样,当县城改变时,乡镇DDDW更新其SQL查询,基于选定县城过滤数据。代码中涉及到获取和设置DDDW的句柄、SQL语句以及事务对象的设置和检索操作。
最低0.47元/天 解锁文章
2963

被折叠的 条评论
为什么被折叠?



