PB 6.0 的下拉列表框功能增强在线教程

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-03-16 22:39:04

---- Power Builder 中提供的许多工具对象和函数,功能强大、使用方便,使开发人员的工作更加灵活、简洁。同时,可以使用特定数据库管理系统专用的SQL语句,大大增强了程序操纵和访问数据库的能力。但在使用中,笔者发现PB 的下拉列表框(DropDownListBox)的Item在取固定值时较为方便,而需从数据表中取变化的值则相对较烦琐,经笔者分析,编制如下函数,实现了上述功能,希望给广大PB编程爱好者一点参考。


---- 具体实现步骤:


---- 1. 新建函数DDLB_FROM_TAB,参数分别如下:


参数 类型 传递方式 说明tab_name string value 表名col_name string value 待取值列名filt_colname string value 条件列名filt_ch string value 比较符filt_value string value 条件值ddlb_name dropdownlistbox value 下拉列表框名

---- 2.添加函数脚本:


string ls_add_string, ls_select_stringint li_pos
DECLARE dyn_cursor DYNAMIC CURSOR FOR sqlsa;ls_select_string = "SELECT " + col_name + "FROM " + tab_name + " WHERE "+ filt_colname + filt_ch + filt_value//此处需注意条件字段类型匹配问题divPARE sqlsa FROM :ls_select_string using sqlca;
OPEN DYNAMIC dyn_cursor;if sqlca.sqlcode < 0 then MessageBox("数据库错误!",sqlca.sqlerrtext) return sqlca.sqlcodeend if
ddlb_parm.SetRedraw(false)ddlb_parm.Reset( )Do While sqlca.sqlcode = 0 Fetch dyn_cursor into :ls_add_string; if sqlca.sqlcode = 0 thenmessagebox("",ls_add_string) ddlb_parm.AddItem(ls_add_string) elseif sqlca.sqlcode < 0 then MessageBox("数据库错误!",sqlca.sqlerrtext) return sqlca.sqlcode else exit end ifLoop
ddlb_parm.SetRedraw(true)Close dyn_cursor;
return 0

---- 3.程序调用自定义函数。由于函数参数引用为字符串,因此当值参是字符串时,需用双重引号,否则,程序运行时会提示错误。


---- 以上程序在windows95、Power Builder 6.0下调试通过。


Tags:

作者:佚名
分享到: 微信 更多