系统登录表单的设计

要求:实验目的。实验内容。实验步骤。实验结果。实验分析和程序清单。

第1个回答  2013-09-24
系统登录表单pass设计(口令验证窗口设计)
1.系统登录表单设计界面
系统登录表单设计界面如图1所示。

图1 “系统登录表单”设计界面
2.功能及设计说明
用户在文本框输入操作员及口令,若正确则调用系统主界面(菜单)。允许输入三次,若三次输入均不正确则自动退出系统。
若用户输入的操作员姓名及口令正确,要完成下列工作:
(1)设置一个全局变量operat,用于记录登录系统的操作员姓名,系统中有三个地方要用到该操作员的姓名或代号:一是进入主界面后在标题栏显示操作员姓名;二是操作员在系统管理模块的口令设置中更改自己的口令时,系统要知道是哪个操作员;三是退出系统时系统日志中要记录该操作员的退出时间。
(2)在系统日志表log.dbf中增加一条记录,并同时记录该操作员登录系统的时间。
(3)从权限表menuright.dbf中读出该操作员对应各菜单项的权限,并赋值给数组。
(4)调用菜单文件,显示系统主界面。
3.属性设置
表11-11 “系统登录表单”属性设置
对象名 属性 属性值 说明
Form1 Caption 口令输入窗口 设置表单标题
AutoCenture .T. 表单自动居中
Height 230
Width 350
Label1 Caption 人事工资管理系统 设置标签显示内容
AutoSize .T.
FontBold .T.
FontName 楷体_GB2312
FontSize 24
ForeColor 0,128,255
BackStyle 0-透明
Label2 Caption 操作员
AutoSize .T.
BackStyle 0-透明
Label3 Caption 口 令
AutoSize .T.
BackStyle 0-透明
Text1
Text2 PasswordChar * 指定用作占位符的字符
InputMask 指定文本框中数据的输入格式
Command1 Caption 确 定
Command2 Caption 退 出
4.事件代码
(1)Form1的Init事件代码:
SET EXACT ON &&精确比较
PUBLIC ARRAY rr[18] &&数组用于实现菜单项权限
PUBLIC i &&i用于记录用户名及口令输入次数
PUBLIC operat &&operat用于保存操作员姓名
i=0 &&使开始计数登录次数变量的值为0
THISFORM.Text1.Setfocus &&使表单的Text1文本框获得焦点
(2)Form1的Unload事件代码:
RELEASE i
SET EXACT OFF
(3)Form1的QueryUnload事件代码:
RELEASE THISFORM
CLEAR EVENTS
QUIT
(4)“确定”按钮(Command1)Click事件代码:
*判断密码是否正确
i=i+1
use ..\dbsystem\operator.dbf
LOCATE FOR 操作员姓名=ALLTRIM(THISFORM.Text1.Value)
DO CASE
CASE i<=3 AND FOUND() AND THISFORM.Text2.Value=operator.口令
*输入次数未超过3次且用户名正确、口令正确
operat=THISFORM.Text1.Value
INSERT INTO ..\dbsystem\log(操作员代号,操作员姓名,登录时间) VALUES(operator.操作员代号,;
operator.操作员姓名,DATETIME())
_SCREEN.Caption="人事工资管理系统"+SPACE(40)+DTOC(DATE())+SPACE(40);
+"操作员:"+operat
SELECT 权限 FROM ..\dbsystem\menuright INTO ARRAY rr WHERE 操作员代号=operator.操作员代号 ;
ORDER BY 菜单项编号
RELEASE THISFORM
DO main_menu.mpr
CASE i<=3 AND FOUND() AND THISFORM.Text2.Value!=operator.口令
*输入次数未超过3次且用户名正确、口令不正确
MESSAGEBOX("密码错误,请重输!","警告")
THISFORM.Text2.Value=""
THISFORM.Text2.Setfocus
CASE i<=3 AND NOT FOUND() &&输入次数未超过3次且用户名不正确
MESSAGEBOX("操作员姓名错误,请重输!","警告")
THISFORM.Text1.Value=""
THISFORM.Text2.Value=""
THISFORM.Text1.Setfocus
CASE i>3 &&输入次数超过3次
MESSAGEBOX("禁止进入系统!","警告")
THISFORM.Release
ENDCASE
(5)“退出”按钮(Command2)Click事件代码:
RELEASE THISFORM
CLEAR EVENTS
5.运行结果
系统登录表单运行结果如图2所示。

图2 “系统登录表单”运行结果
6.上传文件
将文件pass.scx和pass.sct两个文件上传到服务器“应用系统”中的“main”文件夹下。
第2个回答  2013-09-24
数据库表
model
表单
相似回答