浅析VB程序设计项目化教学的实施

2013-04-29 22:39肖波
启迪与智慧·教育版 2013年9期
关键词:程序运行用户名数组

肖波

为了解决程序设计本身枯燥、难懂的问题,激发学生学习兴趣,很多老师都会精心选择一些独特的项目教学,这些项目是来自于实际的应用,在解决实际问题时,有助于培养和发展学生主动参与,提出问题,分析问题,解决问题,往往获得较好的教学效果。“系统登陆程序”是我们在信息系统开发的一个部分,根据学生知识的掌握程度,将其分为三个阶段:

第一阶段:简单“系统登陆程序”的设计

通过大家都熟悉的QQ软件,引入该项目要实现的基本功能,每次登录时都需要验证用户名和密码,当输入错误的用户名或密码时提示登陆失败,只有用户名和密码匹配时系统登陆成功。

项目实施过程中进行界面设计时,引导学生掌握基本控件属性的设置,着重介绍密码文本框password char属性的设置。

界面设置好后,再编写程序实现密码验证的功能。首先让学生分析程序运行过程中可能出现的情况,根据所学知识给出合理的分支,在不同分支中给出相应的信息提示。主要代码如下:

Private Sub Command1_Click( )

If Text1 = "admin" And Text2 = "888888" Then

MsgBox "登录成功!"

Else

MsgBox "登录失败!"

End If

End Sub

程序运行正常,但存在一些功能缺陷。例如:用户名大小写区分,系统登录次数无限制等。下面我们对程序作了改进:

定义一个全局变量a,并给出一个初值限定登陆次数。

Private Sub Command1_Click()

If Trim(LCase(Text1)) = "admin" And Text2 = "888888" Then

MsgBox "登录成功!"

Else

MsgBox "登录失败!"

a = a - 1

End If

If a = 0 Then

End

End If

End Sub

第二阶段:利用数组实现“系统登陆程序”

上一阶段程序存在用户和密码单一且不能修改的问题,结合所学数组和循环结构的知识我们将对原有程序进行进一步修改。

程序修改基本思路:利用数组存放用户名和密码,在系统运行过程中可以给数组重新赋值。系统登录时从头至尾遍历数组,一旦找到相匹配的用户名和密码时则系统登录成功,若从头至尾遍历数组未能找到匹配的用户名和密码则系统登录失败一次,累计遍历三次数组仍然不能成功则强制退出系统。

项目实施工程进行界面设计时主要增加了“添加用户”和“修改密码”按钮,同时增加了添加用户窗体、修改密码窗体和模块。

界面设置好后,再编写程序实现密码验证的功能。

“添加用户”主要代码:

Private Sub Command1_Click()

If Text2 = Text3 Then

For i = 1 To 4

If strName(i) = "" And strPass(i) = "" Then

strName(i) = Text1: strPass(i) = Text2

Unload Me

Exit For

End If

Next i

Else

MsgBox " 两个密码不匹配!"

End If

"修改密码"主要代码:

Private Sub Command1_Click()

If Text1 = Text2 Then

strPass(xiabiao)= Text1

End If

Unload Me

End Sub

"登录"主要代码

Private Sub Command3_Click()

For i = 1 To 4

If Trim(LCase(Text1.Text)) = LCase(strName(i))

And Text2 = strPass(i) Then

MsgBox "登陆成功!"

user = Text1

pass = Text2

xiabiao = i

Exit For

End If

Next i

If i = 5 Then

MsgBox "登陆失败!"

End If

End Sub

程序运行后可以向数组中添加用户和修改用户,可以使用不同的用户名登陆,但也存在一定的缺陷,如添加的用户不能保存,登陸系统重启后数组又恢复原来的初始值。

第三阶段:利用数据库实现“系统登陆程序”

针对第二阶段程序的问题,结合所学数据库访问技术和SQL结构化查询语言,对数据库表进行操作(增加、删除、修改)。

第一步,添加标准模块并设置好名称;第二步,编写代码,首先在工程中添加引用,其次定义从connection对象,定义command对象,并设置该对象的命令(insert、update、select、delete)。系统登陆时在记录集对象中相应的字段循环验证用户名和密码,若找到相匹配的用户名和密码则系统登陆成功,若循环一遍从头至尾未能找到匹配的用户名和密码则系统登陆失败一次,累计登陆错误三次强制退出系统。程序在这里就不一一列出。此外,我们还可以进行界面的优化、实现记载系统登陆日志等功能。

总之,通过该项目三个阶段的实施,由简单到复杂,由浅入深,逐步深入,让学生在一步步走向成功的道路上感受收获的喜悦,学生学习更主动,更容易进入角色,学生随时开动脑筋解决问题,在项目实施过程中学生真正成为了教学主体,教师起引导作用,项目实施过程充分体现“做中学,学中做”的理念。

猜你喜欢
程序运行用户名数组
《护士进修杂志》投稿程序
JAVA稀疏矩阵算法
《护士进修杂志》投稿程序
JAVA玩转数学之二维数组排序
行政公益诉讼诉前程序运行检视
《护士进修杂志》投稿程序
机智的快递员
寻找勾股数组的历程
论刑事错案的成因
《刑事诉讼法》修改背景下刑事和解制度浅析