实验四数据窗口的编程
一、实验目的
(1)进一步加深对数据窗口的了解,熟悉数据窗口画板的使用和数据窗口对象属性的调整方法;
(2)加深对数据窗口类型、各种类型数据窗口的特点以及使用方法的认识;
(3)掌握选项卡控件的使用和编程方法;
(4)掌握数据窗口各种类型数据检索程序的设计方法。
二、实验内容
(1)复习窗口控件中关于选项卡控件的有关内容,有关数据窗口对象的内容,以及有关数据窗口控件的内容;
(2)启动PowerBuilder9.0;
(3)选择已经创建的应用mypb.pb1;
(4)连接数据库到已创建的student。
三、实验步骤
1.关联窗口 W_Querystudent到应用程序中
打开创建的mypb应用的open事件窗口,添加事件的脚本为:
2.创建窗口对象
3.为退出处理事件添加代码
4.布置窗口选项卡
5.配置查询环境
(1)击New图标按钮,弹出“New”对话框
(2)选择DataWindow选项页,双击FreeForm图标,弹出“Choose Data Source for FreeForm DataWindow”对话框;
(3)选择“SQL Select”数据源方式,单击“Next”按钮,弹出“Select Table”对话框;
(4)在Table列表框中选择student表,单击“Open”按钮,这时弹出Select 画板;
6.为按姓名查询的按钮处理事件添加代码
string Is_home
Is_home=trim(Sle_home.text)
if not ls_home="" then
ls_home="%"+ls_home+"%"
dw_home.retrieve(ls_home)
else
MessageBox("数据不全","请输入待查询学生的地区名称。")
end if
sle_home.setFocus()
7.为按家庭住址查询的按钮处理事件添加代码
string Is_home
Is_home=trim(Sle_home.text)
if not ls_home="" then
ls_home="%"+ls_home+"%"
dw_home.retrieve(ls_home)
else
MessageBox("数据不全","请输入待查询学生的地区名称。")
end if
sle_home.setFocus()
8.为按出生日期查询的按钮处理事件添加代码
string ls_start ,ls_end
date ld_Start,ld_end
if IsDate(sle_datestart.text)then
if IsDate(sle_dateend.text)then
ld_start=date(sle_datestart.text)
ld_end=date(sle_dateend.text)
dw_birthday.retrieve(ld_start,ld_end)
else
MessageBox("数据错误","请重新输入结束日期。")
end if
else
MessageBox("数据错误","请重新输入开始日期。
end If
sle_datestart.SetFocus()
9.党团员
四、实验总结
此次上机我复习了窗口控件中关于选项卡控件的有关内容,有关数据窗口对象的内容,以及有关数据窗口控件的内容,在实验二的基础上深对数据窗口类型、各种类型数据窗口的特点以及使用方法的认识;但在实验过程中还是遇到了各种各样的问题,通过上网查询最终还是解决了这些问题,在以后的学习中我要把理论和实践紧密结合,提高自己处理事情的能力。