541007010144谢先斌文档格式.docx
《541007010144谢先斌文档格式.docx》由会员分享,可在线阅读,更多相关《541007010144谢先斌文档格式.docx(23页珍藏版)》请在冰豆网上搜索。
1.熟练掌握在使用PowerBuilder10.0环境下建立工程的方法。
2.重点掌握在PowerBuilder10.0环境下,Workspace、Target(Application)、ASA数据库、ODBC数据源、数据源描述文件、菜单、药品销售管理系统的登录界面等的创建方法;
对表的建立,包括创建主键、外键等。
3.熟练掌握建立一个具体的用户登录界面的步骤以及相关控件的使用方法。
二、实验步骤
1.数据库
1)建立工作区间(WorkSpace)和目标(Target)
单击新建画板(NewPainter)
弹出下图所示的对话框
点击Workspace图标,出现如图所示的对话框,按要求创建并选择工作目录,输入工作空间名xxb,然后按“保存”按钮即可建立工作空间。
2)建立Applicationandlibrary如下图所示,
点击画板的第一项目标Application的功能即为建立一般应用即Window客户端应用,单击该图标出现图所示的对话框:
在ApplicationName下的编辑框中输入应用名xxb,然后用鼠标单击Library下的编辑框,则Library和Target下编辑框中的内容就会自动填充内容。
最终系统树如下所示:
3)建立数据库
在PowerBar上单击Database图标
然后,依次选择展开ODBODBC→Utilities,双击CreateASADatabase
此时出现CreateAdaptiveServerAnywhereDatabase对话框,如上图所示,
然后点击图上标为“…”的按钮,在CreateLocalDatabase对话框中选择自己的workspace所在磁盘和目录,并输入数据库文件名xxb,如下图所示,点击保存。
最终如下:
Xxb的绿钩是亮的,表示数据库已连接。
4)建立ODBC数据源及数据源描述文件
建立数据源
双击上图中的“ODBCAdministrator”选项,打开“ODBC数据源管理器”对话框,如下图所示
点击“添加”按钮,打开下图所示的“创建新数据源”对话框
选择“AdaptiveSeverAnywhere9.0”选项,并单击“完成”按钮,如下图所示
在
文本框输入数据源名字xxb,在
选项卡输入UserID为:
dba和Password为:
sql(不区分大小写)
单击打开。
测试,如果提示成功,就点击确定,再单击确定。
建立建立数据源描述文件
右击下图ODBODBC项,在右键弹出菜单中选择“NewProfile…”子菜单项执行
在Connection选项卡中的ProfileName中填入:
tests
在DataSourse中通过下拉框选择要建立描述文件的数据源。
最后,单击确定。
在建立好的数据源中通过双击或者右键弹出菜单选择Connect来连接数据库。
连接好后的数据库试图如上所示。
2.建立菜单
单击新建,在弹出菜单中选中PBObject选项卡,选中Menu图标,单击OK键。
在新建的窗口中选中untitled0右击弹出菜单,选择InsertSubmenuItems单击,则在其下新建了一个菜单选项。
通过右键任意个已经建立好的菜单选项在弹出菜单中单击InsertSubmenuItemsAtEnd,可以为其建立下一级的子菜单。
如上图所示。
可通过以上步骤建立所需的菜单。
通过选中任意个已经建立的菜单选项,单击其右侧的Toolbar选项,在ToolarItemName的下拉菜单中可以选择所需的图标。
再单击右上角的“
”退出按钮时,会提示是否要保存,单击保存,输入菜单名字为:
w_main,单击OK保存。
3.登陆界面的创建
单击新建,在弹出对话框中选择PbObject单击window控件单击OK,即可创建一个传说中的windows窗口。
如上图左侧是一个picture控件p_1,右侧是Rectange控件r_1,分别用来存放图片和其他控件的容器。
通过左侧红框中的操作可以调整空间的大小和位置。
单击保存按钮,弹出如上对话框,在其中输入w_oper_kl单击OK,即可。
调整w_1控件的大小,在左侧General的Title文本框中填入“操作员登录”作为windows窗口的标题显示在窗体的右上方。
如下图所示。
当一个窗口保存后,就会在最左侧的系统树中出现新建立的窗口图标,w_oper_kl。
通过工具栏小工具中的控件按钮可以完成窗口界面的建立。
如下就是登陆界面的布局。
其中,确定按钮的Script为:
ifsle_1.text="
"
then
messagebox("
提示信息"
"
请先输入操作员工号!
谢谢!
)
sle_1.setfocus()
return
endif
oper_gh=sle_1.text;
selectjbr_xm,jbr_klinto:
oper_xm,:
oper_klfromusercwherejbr_gh=:
sle_1.text;
ifsqlca.sqlcode=0then
工号或用户名输入不正确,请重新输入!
sle_1.text="
return
else
ifoper_kl=sle_1.textthen
messagebox("
您输入的口令不正确,请重新输入!
sle_2.setfocus()
sle_2.selecttext(1,20)
else
open(w_main)
close(parent)
endif
取消的Script为:
close(parent);
其中定义的Globalvariable为:
Stringget_pathname,pic_name,f_name
blobf_pic
Stringoper_gh,oper_xm,oper_kl,dest
datetimeseverdate
在窗口下的Script为:
dest=st_2.tag
p_1.picturename=GetCurrentDirectory()+"
\bmp\seedoctor.jpg"
三、实验心得
我很高兴能学习数据库这门课,感觉她和我以前学得C#总有着千丝万缕的联系,特别是在控件这一方面,有着惊人的相似之处,对我来说Soeasy!
让我感触最大的就是对数据库的建立以及对数据库描述文件的建立上感到吃力,主要是刚接触到数据库,没什么经验。
但在后面的学习中我逐渐有了感觉,主要是通过上课的仔细听讲,当然也有观看了很多的有关powerbuilder以及数据库的视频学到的。
可以这样说,数据库和我们以前所学的编程语言即使有区别,当还是有很多的相似之处的。
我们再学习Powerbuilder中应该增强自己的统管能力,在没有团队的前提下,仔细思考每一个功能控件等的实现,相信定有收获的。