当前位置:首页 > PowerBuilder10.复习资料
Response!
2. Enabled属性和Visible属性有什么特点,不选中时外观上有什么不同?
……………………………………………………………………………………………………………………………………………………………………………………………………………………………. 3. 数据窗口对象和数据窗口控件的关系是什么,它们通过何种方式完成关联?
4. 在应用程序运行过程中,如果新增或修改了数据窗口中的数据,然后没有进行其它操作就退出程序了,那么此时数据库中的数据是否相应修改了?为什么? 5. 如何实现菜单对象与窗口的关联? 6. 什么是主键? 外键? 索引?
7. PB有几个代词?各自的作用是什么? This Parent Parent Window Supper
8. 函数参数的传递方式有哪几种? Value Reference Read Only
9. 对象函数和全局函数的创建方法、调用方式有什么不同?
10.如何实现在窗口单击鼠标右键能出现弹出式菜单(假设窗口名为W_1,菜单名为m_1)? M_1.Popmenu(PointerX(),PointerY())
四、应用题
1.我们都知道,如果PowerBuilder应用程序要与数据库建立连接,连接的代码最好是在应用对象Application的Open事件里编写。假如现在你的应用程序通过ODBC来建立数据库连接,ODBC数据源名称是MANAGER,数据库用户名为SA,密码为ADMIN。以下是在Open事件里连接数据库代码的编写步骤,请完善代码的空白部分。
第一步:向事务对象添加属性,代码是:
SQLCA.DBMS=“ odbc ” SQLCA.AutoCommit = False
SQLCA.DBParm = \’DSN=Manager;UID=SA;PWD=ADMIN’” \ 第二步:连接事务对象,代码是:
Connect;
第三步:出错处理,代码是:
IF SQLCA. SQLCode = -1 THEN
MessageBox(“数据库连接错误”,SQLCA.SQLErrText)
END IF
2.有一位程序员写了下面一段PowerScript程序,请指出其中5处错误的行数及其错误原因。
1 integer daystring,todaystring
2 if len( day(today()))=1 then 3 dayString = \4 else
5 dayString = string(day(today())) 6 end if
7 todayString = string(year(today()))+monthString+dayString; 8 string maxNo
9 select max(danjuhao) into :maxno from checkout2 where danjuhao like :todayString+'%' using sqlca;
答: 第1处:
第2处:
第3处:
第4处:
第5处:
五、程序编写题
在一个登录窗口(窗口名为w_login)中,要求使用者输入正确的密码才能正常进入系统,密码由当前系统日期数字(年份四位,月、日各两位)打乱顺序组合而成。密码算法:如系统日期是2011-01-08,密码按这样的顺序:密码第一位是日期数字第四位1,密码第二位是日期数字第三位1,第三位是日期数字第二位0,第四位是日期数字第一位2,第五位是日期数字第八位8,第六位是日期数字第七位0,第七位是日期数字第六位1,第八位是日期数字第五位0。按此顺序则正确的密码应该是11028010。现需要编写一个编程,将输入的密码重组成日期,如果重组后的日期是当前系统日期,就可登陆,请写出实现该功能的程序代码。 注:密码在登录窗口的单行编辑框(控件名为sle_day)中录入,代码编写位置在窗口的按钮(控件名为cb_pass)
鼠标单击事件中。密码输入正确后可打开主窗口(窗口名为w_1),密码输入错误则弹出提示对话框(对话框标题为:信息提示;对话框中的文字为:密码输入错误,请重新输入)。
date today //当前日期 string pwd //文本框中的值
String n1,n2,n3,n4,n5,n6,n7,n8
pwd=sle_day.text today=today() //获取当前日期
n1=mid(pwd,1,1) n2=mid(pwd,2,1) n3=mid(pwd,3,1) n4=mid(pwd,4,1) n5=mid(pwd,5,1) n6=mid(pwd,6,1) n7=mid(pwd,7,1) n8=mid(pwd,8,1)
if today =date(n4+n3+n2+n1+\ messagebox(\登录成功\else messagebox(\密码输入错误,请重新输入\end if
共分享92篇相关文档