利用PB动态创建数据窗口
当利用PowerBuilder建立数据窗口时,用户通常不能自己选择数据来源和显示类型。如何让用户在应用程序中自己定义数据窗口的数据来源和显示类型呢?为了达到这个目的,我们必须在运行程序阶段根据用户自己的需求,动态地建立一个数据窗口。笔者将结合实际,详细介绍动态创建数据窗口的步骤。 在建立动态数据窗口之前,必须先得到数据窗口对象的语法,PB中为我们提供了SyntaxFromSQL( )函数,利用这个函数可以得到建立数据窗口的语法。SyntaxFromSQL()函数的基本格式如下: 事物对象.SyntaxFromSQL(数据来源字符串,显示类型字符串,错误字符串) 下面是建立一个数据窗口对象语法的范例∶
// 声明变量 string ls_sql, ls_present,ls_err, ls_syntax // 定义数据窗口的数据来源 ls_sql = "select emp_id from employee" //定义数据窗口显示字符串 ls_present = "style(type=tabular)" // 得到建立数据窗口对象语法 // 如果错误发生,SyntaxFromSQL 返回一个空字符串 ls_errls_syntax = SQLCA.SyntaxFromSQL(ls_sql, ls_present , ls_err) |
// 声明变量string ls_syntax ,ls_err ls_errdw_1.Create(ls_syntax, ls_err) dw_1.SetTransobject(SQLCA) dw_1.retrieve( ) |
在用户对象画板内,建立一个标准数据窗口的用户类。
可以在这个控件中增加功能、程序、用户对象函数和用户自定义事件后,保存用户对象到对象数据库中。
利用 OpenUserObject( )函数建立一个数据窗口用户对象的复件,一般格式如下∶OpenUserObject(用户对象变量,{x坐标值,y坐标值})。下面是在窗口上鼠标点击的坐标位置建立一个用户对象 u_dw的范例∶ OpenUserObject(u_dw, Pointerx( ),Pointery( ))
以上是建立一个动态数据窗口的基本步骤,感兴趣的读者不妨一试。
数据分析咨询请扫描二维码