Labview搭建登录系统上位机

时间:2024-05-18 12:26:32

最近要设计一个软件,要求要有登录系统,经过几天的查看资料和调试,终于实现了基本功能。在搭建的过程也参考了许多人的资料,我也没有做记录,但内心还是十分感激。下面是我的登录系统的框架。

主要要求:

    1.当运行软件是,登录界面弹出,需要输入用户名和密码进行登录;

    2.用户名和密码要实现用文件保存,如果需要添加或者修改密码直接修改文件即可;(我这里用的是txt文件,目前还不会操作数据库)

    3.能够保存最近几次成功登录的用户信息;(我这里只实现了登录时间及登录用户的存储,能够保留最后四次)

    4.成功登录后,登录界面自动隐藏,主程序界面显示进行其他操作;(其他操作这里就不展开了,主要是登录框架)

我最后实现之后,保存登录信息做成了一个子vi,然后登录vi调用它,主程序vi调用登录vi,当然调用关系,可以根据个人的想法来决定谁来调用谁。

Labview搭建登录系统上位机

这里login就是登录的vi,login_message是对登录日志的实现。login中首先是对存有用户和密码信息的文本文件读取,然后通过比较确认是不是可以登录。如果用户上来不输入用户和密码直接点击登录,系统会提示输入信息,如下图

Labview搭建登录系统上位机

当输入信息之后如果密码或者用户名与配置文件的所有用户信息都不同,系统会提示输入错误,如下图

Labview搭建登录系统上位机

当输入的用户和密码无误后系统才能正常跳转,这里没有做限制错误登录次数,如果需要实现当输入密码错误三次之后系统在规定的时间内不允许登录,只需要在这个基础上稍加改动即可。当成功登录之后,在后台会自动保存本次的登录信息如下图(如果名字恰好用到了各位,十分抱歉,哈哈哈,可能我们只是恰巧都有一个隔壁王哥)

Labview搭建登录系统上位机

这里只会保存最后四次信息,如果需要多保留几次,只需要把login_message的一个输入改成想要的次数即可。

Labview搭建登录系统上位机

上面就是login_message的程序面板,该vi盗用需要输入路径,保存次数你n,要保存的文本,我这里用的是换行符来识别,所以如果要存储的信息如果大于一行我还没有看过效果,可能需要改动,即while循环部分。后面的条件结构部分是区分是否已经有足够次数的保存信息,如果是,这个时候要让最后一次的信息覆盖最早一次的信息,如果没有那么在末尾正常存储。在真的分支中之所以先关掉了文件,是因为我重新保存的数据要替换之前的所有数据,这里虽然实现了功能,但是还是不是很满意,看起来有点啰嗦,如果各位有什么更好的实现方式,可以告诉我,不胜感激!

Labview搭建登录系统上位机

上面是login的程序,当执行确定按钮即登录之后,先判定是否输入了信息,如果没有会执行假分支弹出错误窗口,否则,与配置文件信息进行比对,这里我每两个用户和密码之间用了分号间隔,目的是为了读取时方便区分开,

Labview搭建登录系统上位机

当对比了三个用户信息之后发现没有与当前登录信息相同的,那么会继续执行假分支,弹出错误提示,如果比对成功,则调用login_message保存信息,退出两个while循环,然后对当前vi属性进行更改,使其关闭不占用内存。在主程序结构中对login进行调用,如下

Labview搭建登录系统上位机Labview搭建登录系统上位机

登录不成功会执行while循环的假分支程序,重新调用login,保证在错误登陆时候登陆面板保持显示,在调用login时要配置其调用节点,当调用时显示前面板。如果要实现之前说的错误次数达到上限之后让程序锁定,就需要在这里进行更改了,具体就仁者见仁智者见智了,最近也是刚刚开始研究labview,程序中肯定有很多不好的地方,欢迎大家交流共同进步!