在考生文件夹下有一个工程文件sjt5.vbp,含三个窗体,标题分别为“启动”、“注册”、“登录”,运行时显示“启动”窗体,单击其上按钮时弹出对应窗体进行注册或登录。注册信息放在全局数组USel"S中,注册用户数(最多10个)放在全局变量n中(均已在标准模块

admin2010-09-02  32

问题 在考生文件夹下有一个工程文件sjt5.vbp,含三个窗体,标题分别为“启动”、“注册”、“登录”,运行时显示“启动”窗体,单击其上按钮时弹出对应窗体进行注册或登录。注册信息放在全局数组USel"S中,注册用户数(最多10个)放在全局变量n中(均已在标准模块中定义)。注册时用户名不能重复,且“口令”与“验证口令”须相同,注册成功则在“启动”窗体的标签中显示“注册成功”,否则显示相应错误信息。登录时,检验用户名和口令,若正确,则在“启动”窗体的标签上显示“登录成功”,否则显示相应错误信息。标准模块中函数finduscr的功能是:在users数组中搜索用户名(即参数ch),找到则返回该用户名在users中的位置,否则返回O。已经给出了所有控件和程序,但程序不完整,请去掉程序中的注释符,把Form2、Form3窗体文件中的?改为正确的内容。
注意:不得修改已经存在的程序和控件的属性,最后程序按原文件名存盘。

选项

答案 【操作步骤】 步骤l:打开考生文件中的本题工程文件sjt5.vbp,在代码编辑窗口,去掉程序中的注释符“’”,将问号“?”改为正确的内容。 参考代码: ---注册窗体Form2--- n=n+1 ElseIf finduser(Trim$(Textl))>O Then Forml.Labeu.caption="注册成功!" ---登录窗体Form3- If k=0 Then ElseIf Trim$(Text2) <>users(k,2)Then 步骤2:按要求将文件保存至考生文件夹中。

解析 ①在实际应用中,较为复杂的应用程序通常由多个窗体组成,且可设置其中一个为启动窗体,只有启动窗体才能在运行程序时自动加载并显示出来。②在多个窗体组成的程序中,可以在一个窗体中读取另一个窗体中控件的属性值,其语法格式为:窗体名称.控件名称.属性名称。③标准模块(文件扩展名为.BAS)是应用程序内其他模块可访问的过程和声明的容器。它们可以包含变量、常数、类型、外部过程和全局过程的全局(在整个应用程序范围内有效的)声明或模块级声明。
本题原程序在“注册”窗体的“确定”按钮的单击事件过程中,先判断是否输入用户名,若没有输入则弹出提示信息,否则通过调用标准模块中的finduser函数,检查输入用户是否存在于users数组中(条件表达式为:finduser(Trims(Text1))>0),若该用户存在则弹出提示信息,否则进一步检查前后两次输入的密码是否一致,若前后不一致则弹出提示信息,否则通过调用过程writeusers将该用户名及密码写入数组users中,并在“启动”窗体的标签(Forml.Labell)中显示“注册成功”。每调用一次过程writmmers,全局变量n将记录新增一个用户,即n=n+l。
    在“登录”窗体的“登录”按钮的单击事件过程中,通过调用标准模块中的finduser函数,检查输入用户是否存在于users数组中,若不存在(条件表达式为:k=O)则弹出提示信息,否则进一步检查该用户的密码输入是否正确(条件表达式为:Trims(Text2)<>usors(k,2)),若不正确则弹出提示信息,否则在“启动”窗体的标签(Forml.Labell)中显示“登录成功”。
转载请注明原文地址:https://jikaoti.com/ti/1Ng0FFFM
0

最新回复(0)