vb用户登录:用VB实现用户登录密码的修改来源: 发布时间:星期四, 2009年2月12日 浏览:118次 评论:0
我们在设计应用软件Software时总希望在进入软件Software主窗体的前显示用户登录窗体要求用户输入密码当用户密码得到验证后即可进入软件Software应用环境用户登录密码修改是指进入主窗体后能够对登录密码进行修改设置新密码将成为下次登录时用密码本文就谈谈如何在vb5.0中实现用户登录密码修改 、实现原理 在vb5.0中文件共有 3类:顺序文件;随机文件; 2进制文件顺序文件主要用途是存取文本文件按照先后顺序进行存取数据使用简单容易要实现密码修改设置可把密码保存在顺序文件config.txt中然后对其进行打开、关闭、读写等操作用户登录时先用open语句打开config.txt文件用input #语句从该文件中读取密码设置新密码时要求用户输入两次密码进行确认在确认这两次输入密码致后用open语句建立文件config.txt用pr #语句将密码写入文件就将用户新设置密码存入指定config.txt文件中 现将和文件操作语句解释如下: 1.open语句 打开顺序文件模式为input时表示将数据从磁盘上输入内存中;模式为output时表示将数据从内存写入磁盘 2.close语句 关闭所有已打开数据文件 3.input #语句 用于从顺序文件中读取数据 4.pr #语句 把内存中数写入顺序文件 2、实现 1.新建个工程将窗体form1命名为yhdl该窗体是整个运行后首先出现在用户面前用于用户登录而且必须通过合法性检查将窗体controlbox属性设为false,标题为“用户登录”在窗体中添加文本框(text1)用于用户输入密码两个命令按钮(command1、command2)标题分别为:“确认”、“取消”创建好窗体如下图所示用字处理软件Software建立文本文件config.txt将密码存 于该文件中将该文件保存在新建工程所在目录将文本框passwordchar属性设为*代码如下: dim i as eger ’用户登录 dim passwordstr as private sub command1_click open \"config.txt\" for input as #1 do while not eof(1) input #1, passwordstr loop close #1 i = i + 1 i < = 3 then text1.text = passwordstr then ’输入正确 unload me ksxt.show ’ksxt为笔者设计考试系统窗体 ’输入 x = msgbox(\"用户密码输入!请再输次!\", 17, \"警告\") text1.focus end unload me ’输入次数超过 3次卸载窗体 end end sub private sub command2_click unload me ’按取消按钮卸载登录窗体 end sub private sub form_load me.move (screen.width - me.width) / 2, (screen.height - me.height) / 2 show text1.focus i = 0 ’输入次数化 end sub 2 .在工程1中添加笔者设计考试系统窗体ksxt有密码设置 子菜单名为 szmm private sub szmm_click mmsz.show ’单击mmsz 菜单项显示密码设置窗体 end sub 3 .在工程1中添加窗体form2命名为mmsz标题为“密码设置”当用户需要更改密码时可以在中此窗体这个窗体需要正确接收用户输入密码并且将两次输入密码进行比较当符合要求时将密码存入config.txt文件中在窗体中添加文本框(text1)用于用户输入密码添加文本框(text2)用于用户对输入密码进行确认两个命令按钮(command1、command2)标题分别为:“确认”、“取消”创建好窗体如下图所示将两个文本框passwordchar属性都设为*代码如下: private sub command1_click ’密码设置 text1.text = text2.text then ’确认两次输入密码是否致 passwordstr = \"text2.text\" open \"config.txt\" for output as #1 pr #1, text1.text close #1 unload me x = msgbox(\"密码输入!请重新输入!\", 17, \"警告\") text2.focus end end sub private sub command2_click unload me end sub private sub form_load me.move (screen.width - me.width) / 2, (screen.height - me.height) / 2 show text1.focus end sub 0
相关文章读者评论发表评论 |