数据库系统开发与PowerBuilder.pptx
《数据库系统开发与PowerBuilder.pptx》由会员分享,可在线阅读,更多相关《数据库系统开发与PowerBuilder.pptx(73页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、7.1 掌握数据窗口控件函数 7.1.1 常用函数 7.1.2 实例:学生选课系统版本9 7.1.3 实例:学生选课系统版本107.1.4 实例:学生选课系统版本11 第1页/共73页7.1.1 常用函数 1.数据操纵函数(1)提取 如果要使用数据窗口控件从数据库中提取数据,可以使用Retrieve函数。.Retrieve(,)(2)重新提取 如果要使数据窗口控件重新从数据库中提取数据,可以使用ReselectRow函数。.ReselectRow(row)第2页/共73页(3)插入 如果要在数据窗口控件中插入一条记录,可以使用InsertRow函数。.InsertRow(row)(4)删除 如
2、果要在数据窗口控件中删除一条记录,可以使用DeleteRow函数。.DeleteRow(row)(5)更新 如果要将数据窗口控件中的数据保存到数据库中,可以使用Update函数。.Update()第3页/共73页2.数据处理与统计函数(1)排序 .SetSort(A/D,).Sort()(2)过滤 .SetFilter().Filter()(3)清除 如果要清除数据窗口控件中的数据而又不影响数据库中的数据,可以使用Reset函数。.Reset()第4页/共73页(4)统计记录数 如果要统计数据窗口控件中当前可用记录的记录数,可以使用RowCount函数。.RowCount()(5)统计删除记录
3、数 如果要统计数据窗口控件中删除记录的记录数,可以使用DeletedCount函数。.DeletedCount()(6)统计修改记录数 如果要统计数据窗口控件中已修改但未保存至数据库的记录的记录数,可以使用ModifiedCount函数。.ModifiedCount()第5页/共73页3.数据行滚动函数(1)Scroll函数 该函数用来滚动数据窗口控件中的编辑控件中的文本行。.Scroll(n)(2)ScrollToRow 函数 该函数用来指定数据窗口控件中的某一行为当前行。.ScrollToRow(row)(3)ScrollNextRow 该函数在数据窗口控件中滚动当前行,使下一行成为当 前
4、行。.ScrollNextRow()第6页/共73页(4)ScrollPriorRow 该函数在数据窗口控件中滚动当前行,使上一行成为当前行。.ScrollPriorRow()(5)ScrollNextPage 该函数使数据窗口控件中的数据向后滚动一页。.ScrollNextPage()(6)ScrollPriorPage 该函数使数据窗口控件中的数据向前滚动一页。.ScrollPriorPage()第7页/共73页4.数据行操纵函数(1)SetRow 如果要指定某行为当前行,可以使用SetRow函数。.SetRow(row)(2)SetColumn 如果要指定某列为当前列,可以使用SetCo
5、lumn函数。.SetColumn(col)(3)GetRow 如果要得到当前行的行号,可以使用GetRow函数。.GetRow()第8页/共73页(4)GetColumn 如果要得到当前列的列号,可以使用GetColumn函数。.GetColumn()(5)GetColumnName 如果要得到当前列的列名,可以使用GetColumnName 函数。.GetColumnName()第9页/共73页5.其他函数(1)AcceptText 如果要使用户没有移动输入焦点就可以将编辑控件中的 数据置入列中,可以使用AcceptText函数。.AcceptText()(2)SetFocus 如果要选中
6、当前行、列,即使之成为可编辑状态,可以 使用SetFocus函数。.SetFocus()第10页/共73页(3)SelectRow 如果要使某一行加亮显示或取消某一行的加亮显示,可以使用SelectRow函数。.SelectRow(row,TRUE/FALSE)(4)Print 如果要打印数据窗口控件的内容,可以使用Print函数。.Print()第11页/共73页7.1.2 实例:学生选课系统版本9 例7-1 设计“学生选课系统”的“学生删除”窗口。设计:该模块可以实现按学号查询,并删除当前记录。为防止误删除,单击“删除”按钮确认删除后,必须单击“确定”按钮再次确认。同时,系统自动检测如果所
7、删除学生已选修了课程则不允许删除。另外,由于删除窗口与查询窗口的数据窗口对象完全一致,故删除窗口可以使用查询窗口的数据窗口对象。脚本:第12页/共73页操作步骤:(1)选择“File”“New”命令,选择“PB Object”选项卡“Window”,单击“OK”按钮,进入窗口设计界面。(2)设置窗口属性:在“Title”输入框中输入“学生删除”,在“WindowType”框中选择“response!”,在“WindowState”框中选择“normal!”。(3)单击工具栏数据窗口控件放置数据窗口控件“dw_1”,并在属性“DataObject”框中指定需要连接的数据窗口对象名为“d_s_lo
8、cate”,选中“HScrollBar”以“VScrollBar”,并调整控件大小、位置。第13页/共73页(4)单击工具栏静态文本控件,放置静态文本控件“st_1”,并命名为“起始学号”;放置静态文本控件“st_2”,并命名为“终止学号”。单击工具栏单行编辑器控件,放置单行编辑器控件“sle_1”;放置单行编辑器控件“sle_2”。放置命令按钮控件“cb_1”,并命名为“检索”;放置命令按钮控件“cb_2”,并命名为“删除”;放置命令按钮控件“cb_3”,并命名为“确定”;放置命令按钮控件“cb_4”,并命名为“关闭”。调整窗口大小以及控件大小、位置。第14页/共73页第15页/共73页(5
9、)选择“Open”事件,编写脚本。(6)选择“CloseQuery”事件,编写脚本。(7)选择“检索”按钮“Clicked”事件,编写脚本。(8)选择“删除”按钮“Clicked”事件,编写脚本。(9)选择“确定”按钮“Clicked”事件,编写脚本。(10)选择“关闭”按钮“Clicked”事件,编写脚本。(11)单击工具栏“保存”图标,输入窗口名“w_s_delete”。(12)打开菜单“m_main”,双击“学生管理”菜单标题“删除”菜单项,在下部脚本窗口中编写脚本:Open(w_s_delete)第16页/共73页(13)单击PowerBar工具栏“Run”图标,运行应用程序。选择“学
10、生管理”“删除”命令,打开“学生删除”窗口。应用程序运行时,如果系统提示数据窗口对象无法Update,可以打开数据窗口对象,选择“Rows”“Update Properties”命令,选中“Allow Updates”框,并指定相应选项。第17页/共73页7.1.3 实例:学生选课系统版本10例7-2 设计“学生选课系统”的“课程删除”窗口。设计:与“学生删除”窗口类似,该模块可以实现按课程编号查询,并删除当前记录。为防止误删除,单击“删除”按钮确认删除后,必须单击“确定”按钮再次确认。同时,系统自动检测如果所删除课程已有学生选修则不允许删除。脚本:第18页/共73页 由于“课程删除”窗口与“
11、学生删除”窗口完全类似,可以直接修改“学生删除”窗口得到“课程删除”窗口。操作步骤:(1)创建用于“课程删除”的Grid风格的数据窗口对象“d_c_delete”,并将各列跳转序号设为“0”。(2)打开窗口“w_s_delete”,选择“File”“Save As”命令,打开“Save Window”对话框。(3)在“Windows”输入框中输入“w_c_delete”,即将“w_s_delete”窗口另存为“w_c_delete”窗口,单击“OK”按钮,返回“w_c_delete”窗口设计界面。第19页/共73页(4)修改窗口:将“Title”输入框中修改为“课程删除”,将数据窗口控件“dw
12、_1”属性“DataObject”框数据窗口对象名修改为“d_c_delete”,将静态文本控件“st_1”,修改为“起始课程编号”,将静态文本控件“st_2”修改为“终止课程编号”。第20页/共73页(5)选择“检索”按钮“Clicked”事件,修改脚本。(6)选择“删除”按钮“Clicked”事件,修改脚本。(7)选择“确定”按钮“Clicked”事件,编写脚本。(8)单击“关闭”按钮,保存修改。(9)打开菜单“m_main”,双击“课程管理”菜单标题“删除”菜单项,在下部脚本窗口中编写脚本:Open(w_c_delete)(10)单击PowerBar工具栏“Run”图标,运行应用程序。选
13、择“课程管理”“删除”命令,打开“课程删除”窗口。第21页/共73页7.1.4 实例:学生选课系统版本11 例7-3 设计“学生选课系统”的“课程修改”窗口。设计:该模块可以实现按课程编号查询,并修改记录,同时cno不允许修改。当关闭窗口时,系统自动检测是否对数据进行了修改,并提示是否保存。脚本:第22页/共73页操作步骤:第一步 设计用于“课程修改”窗口的数据窗口对象。用于“课程修改”窗口的数据窗口对象与用于“课程删除”窗口的数据窗口对象“d_c_delete”仅字段的可修改性不同,可以直接修改“d_c_delete”得到。(1)打开数据窗口对象“d_c_delete”,选择“File”“S
14、ave As”命令,打开“Save DataWindow”对话框。在“DataWindows”输入框中输入“d_c_edit”,即将“d_c_delete”另存为“d_c_edit”,单击“OK”按钮,返回“d_c_edit”窗口设计界面。第23页/共73页(2)单击工具栏“跳转次序”图标,将cno跳转序号设为“0”,其余各字段以10为间隔。第24页/共73页(3)单击工具栏“跳转次序”图标,取消跳转次序设置状态。单击细目区“cno”列,设置底色为灰色。(4)单击“关闭”按钮,保存修改。第25页/共73页第二步 设计“课程修改”窗口(1)选择“File”“New”命令,选择“PB Object
15、”选项卡“Window”,单击“OK”按钮,进入窗口设计界面。(2)设置窗口属性:在“Title”输入框中输入“课程修改”,在“WindowType”框中选择“response!”,在“WindowState”框中选择“normal!”。(3)单击工具栏数据窗口控件,放置数据窗口控件“dw_1”,并在属性“DataObject”框中指定需要连接的数据窗口对象名为“d_c_edit”,选中“HScrollBar”和“VScrollBar”,并调整控件大小、位置。第26页/共73页(4)单击工具栏静态文本控件,放置静态文本控件“st_1”,并命名为“起始课程编号”;放置静态文本控件“st_2”,并
16、命名为“终止课程编号”。单击工具栏单行编辑器控件,放置单行编辑器控件“sle_1”;放置单行编辑器控件“sle_2”。单击工具栏命令按钮控件,放置命令按钮控件“cb_1”,并命名为“检索”;放置命令按钮控件“cb_2”,并命名为“确定”;放置命令按钮控件“cb_3”,并命名为“取消”;放置命令按钮控件“cb_4”,并命名为“关闭”。调整窗口大小以及控件大小、位置。第27页/共73页第28页/共73页(5)选择“Open”事件,编写脚本。(6)选择“CloseQuery”事件,编写脚本。(7)选择“检索”按钮“Clicked”事件,编写脚本。(8)选择“确定”按钮“Clicked”事件,编写脚本
17、。(9)选择“取消”按钮“Clicked”事件,编写脚本。(10)选择“关闭”按钮“Clicked”事件,编写脚本。(11)单击工具栏“保存”图标,输入窗口名“w_c_edit”。(12)打开菜单“m_main”,双击“课程管理”菜单标题“修改”菜单项,在下部脚本窗口中编写脚本:Open(w_c_edit)(13)单击PowerBar工具栏“Run”图标,运行应用程序。选择“课程管理”“修改”命令,打开“课程修改”窗口。第29页/共73页7.2 掌握数据窗口控件事件 7.2.1 常用事件 7.2.2 实例:学生选课系统版本12 7.2.3 实例:学生选课系统版本137.2.4 实例:学生选课系
18、统版本147.2.5 实例:学生选课系统版本15 第30页/共73页7.2.1 常用事件1.Clicked事件 单击数据窗口控件中非编辑区域时触发。2.DoubleClicked事件双击数据窗口控件中非编辑区域时触发。3.EditChanged事件 数据窗口控件的编辑控件中按任何按键时触发。4.ItemChanged事件 在数据窗口控件中某个域被修改且该域失去焦点时触发。5.RowFocusChanged事件当前行发生变化时触发。第31页/共73页6.ItemError事件 修改字段并移走焦点但数据未通过有效性检查时触发。7.Error事件数据窗口对象的数据或属性表达式发生错误时触发。8.DB
19、Error事件 数据窗口控件访问数据库过程中,发生数据库错误时触发。9.PrintStart事件 开始打印数据窗口控件的数据前触发。10.PrintEnd事件 打印完数据窗口控件的数据后触发。第32页/共73页11.RetieveStart事件 数据窗口控件开始提取数据前触发。12.RetieveEnd事件 数据窗口控件提取完数据后触发。13.UpdataStart事件 在调用Update函数开始修改数据库前触发。14.UpdataEnd事件在调用Update函数修改完数据库后触发。第33页/共73页7.2.2 实例:学生选课系统版本12 例7-4 设计“学生选课系统”的“学生修改”窗口。设计
20、:该模块可实现按学号查询,并修改记录,同时sno不允许修改。当关闭窗口时,系统自动检测是否对数据进行了修改,并提示是否保存。另外由于email为惟一性字段,当录入email后,系统自动判别email惟一性,该功能由ItemChanged事件完成。即当对任一字段修改完毕后触发ItemChanged事件,首先判断修改的是否是email,如果是则判断email的惟一性。脚本:第34页/共73页操作步骤:第一步 设计用于“学生修改”窗口的数据窗口对象 用于“学生修改”窗口的数据窗口对象与用于“学生查询”窗口的数据窗口对象“d_s_locate”仅字段的可修改性不同,可以直接修改d_s_locate”得
21、到。(1)打开数据窗口对象“d_s_locate”,选择“File”“Save As”命令,打开“Save DataWindow”对话框。在“DataWindows”输入框中输入“d_s_edit”,即将“d_s_locate”另存为“d_s_edit”,单击“OK”按钮,返回“d_s_edit”窗口设计界面。(2)单击工具栏“跳转次序”图标,将sno跳转序号设为“0”,其余各字段以10为间隔。第35页/共73页(3)单击工具栏“跳转次序”图标,取消跳转次序设置状态。单击细目区“sno”列,设置底色为灰色。(4)设置sex列属性:单击细目区“sex”列,单击“Edit”选项卡,设置“Style
22、 Type”框为“DropDownListBox”,“Code Table”输入框输入显示值与存储值之间的对应关系。第36页/共73页(5)设置birthday列属性:单击细目区“birthday”列,单击“Edit”选项卡,设置“Style Type”框为“EditMask”,“Mask”输入框中输入“yyyy-mm-dd”,并选中“Spin Control”。(6)单击“关闭”按钮,保存修改。第37页/共73页第二步 设计“学生修改”窗口(1)打开窗口“w_c_edit”,选择“File”“Save As”命令,打开“Save Window”对话框。在“Windows”输入框中输入“w_s
23、_edit”,即将“w_c_edit”窗口另存为“w_s_edit”窗口,单击“OK”按钮,返回“w_s_edit”窗口设计界面。(2)修改窗口:将“Title”输入框中修改为“学生修改”,将数据窗口控件“dw_1”属性“DataObject”框数据窗口对象名修改为“d_s_edit”,将静态文本控件“st_1”,修改为“起始学号”,将静态文本控件“st_2”修改为“终止学号”。第38页/共73页第39页/共73页(3)定义实例变量“i_n”。(4)指向数据窗口控件,单击右键,打开快捷菜单,选择“Script”命令“ItemChanged”事件,编写脚本。(5)选择“ItemError”事件,
24、编写脚本。(6)选择“检索”按钮“Clicked”事件,编写脚本。(7)单击“关闭”按钮,保存修改。(8)打开菜单“m_main”,双击“学生管理”菜单标题“修改”菜单项,在下部脚本窗口中编写脚本。Open(w_s_edit)(9)单击PowerBar工具栏“Run”图标,运行应用程序。选择“学生管理”“修改”命令,打开“学生修改”窗口。第40页/共73页7.2.3 实例:学生选课系统版本13 例7-5 设计“学生选课系统”的“课程增加”窗口。设计:该模块可以实现增加课程的功能。当关闭窗口时,系统自动检测是否对数据进行了修改,并提示是否保存。另外,由于cno为主键,当录入cno后,系统自动判别
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 系统 开发 PowerBuilder
限制150内