基于Visual FoxPro的用户登录窗体设计与实现

时间:2022-07-05 02:40:47

基于Visual FoxPro的用户登录窗体设计与实现

摘要:登录窗体在相关数据处理软件开发中使用十分频繁,其中最主要的是用户合法性验证,包括用户名、密码和用户类型等信息的有效性验证。该文就在Visual FoxPro环境下如何实现简单的登录窗体作了详细论述。

关键词:表单编程;用户登录;控件编程

中图分类号:TP311文献标识码:A文章编号:1009-3044(2010)03-626-02

Design and Implementation of User Login form Based on Visual FoxPro

HU Kai-hua,ZHANG Yu-jing,SHU Qi-liang

(Jingdezhen Ceramic Institute of Science and Technology Arts Institut, Jingdezhen 333001, China)

Abstract: User login form was used very frequent in the relevant data processing software development, the most important is the user Legality verification. Including the user name, password and user type validation, etc. In this paper, base on the Visual FoxPro environment, how to realize a simple login form were discussed in detail.

Key words: forms programming; user login; controls programming;

大多涉及数据库内容的管理系统在使用之前都要求进行用户的合法性检验,所以登录界面的设计是大多应用软件都会涉及到的开发内容,甚至现有的一些编程工具中还直接提供了登录控件,以此提高登录界面设计及开发的周期。该文在VF下从面向对象的角度制作一个简单的登录界面。

1 登录流程图

用户在使用系统前,必须在获得管理员分配的帐号后进行登陆。登陆过程首先验证用户帐号和密码是否正确,然后判断用户类型。系统根据不同的用户类型进入不同的用户主界面。系统登陆流程图如图1所示。

2 设计及实现

2.1 用户表设计

该表单会用到一个用户表,用户表中至少有用户名和密码两个字段,表属性如表1所示。

2.2 表单的设计

新建一个如图2所示的表单,该表单中所用到的控件及其功能描述如表2所示。

2.3 VF中的messagebox函数

在该表单的程序实现过程中,在进行用户登录时的合法性检验时,会用到messagebox函数,该函数可以显示一个自定义的对话框。常用作提示之用,也可以作一些简单的选择,比如“确定”、“取消”等。

1) messagebox函数语法

MESSAGEBOX(提示信息[,对话框的属型[,对话框窗口标题]])

2) 对话框图标如表3所示。

3) 对话框按钮设置方式如表4所示。

4) 对话框按钮的返回值如表5所示。

2.4 编程实现

1) 登录按钮click事件代码如下:

close table all *关闭所有数据表

if empty(thisform.text1.value) *判断用户名是否为空

messagebox(“用户名不能为空”,64,“登录提示”)

thisform.text1.setfocus *用户名控件获取焦点

Return*退出当前按钮事件程序

endif

if empty(thisform.text2.value)

messagebox("密码不能为空",64,"登录提示")

thisform.text2.setfocus

return

endif

use yonghubiao*打开用户表

locate for 用户名=alltrim(thisform.text1.value) AND 密码=alltrim(thisform.text2.value)

if found() *判断用户名及密码是否正确

*登录成功,执行相应操作

else

messagebox("用户名或密码不正确",48,"系统提示")

endif

Use*关闭用户表

2) 退出按钮click事件代码如下:

if messagebox("是否真要退出整个系统",1+16+256,"退出提示")=1

thisform.release*释放当前表单

endif

3) Timer控件Timer事件代码如下:

Interval属性用来决定每隔多长的时间要引发回送,其设置值的单位是毫秒,数值为1000表示1秒钟间隔。

if thisform.label1.left

thisform.label1.left=thisform.label1.left+5

else

thisform.label1.left=0 *文字慢慢出现

endif

4 结束语

Visual FoxPro中提供了大量的命令供用户使用,该实例中的用户名和密码验证就是使用VF自身的Locate命令来实现,另外还可以用SQL语句中的Select语句来实现。该登录界面可以根据实际需求进行适当修改便可实现不同的用户身份验证功能。

参考文献:

[1] 张鲁,VISUALF()XPR()6.0编程技巧与实例分析[M].北京:中国水利水电出版社,1999.

[2] 索梅.VISUALF()XPRO6.o教程[M].北京:电子工业出版社,2002.

[3] 杨绍增.中文Visual FoxPro应用系统开发教程[M].2版.北京:清华大学出版社,2008.

上一篇:基于Web服务和WF的工作流管理信息系统应用研究 下一篇:基于Moodle的《大学计算机基础》混合式教学模...