基于LabView构建学生信息存储读取系统
目录
声明:以下所有操作均基于LabView2021完成。
最近在上LabView的相关课程,老师布置了一项课程作业-搭建一个学生信息管理系统,要求如下:
- 可以录入信息,并且录入的信息需要在前面板显示出来
- 可以查询已录入的信息
- 优化面板,做到简洁。
在完成过程发现晚上相关的教程比较少,并且时间都比较久了。
因此打算自己记录一份制作过程。一来梳理一下自己的思路,二来希望可以帮助到之后那些如我一样初学LabView的朋友们,让大家有个参考思路。
初学LabView制作简陋,欢迎交流,不喜勿喷。
一、信息录入
1、实现目标
- 信息输入框,主要包含学号、姓名、专业、联系方式
- 确定按钮,输入信息后点击确定按钮后信息被录入
- 信息显示框,点击确定按钮之后,在显示框中显示输入的信息
- 将录入的信息写入txt文件中保存方便后续查找
2、框架搭建
1)前面板搭建
前面板搭建所需的控件主要从控件面板–新式库里面选取
a.搭建输入组件
在控件面板中找到数据容器库,从中拉取簇控件到前面板中。然后在字符串与路径库中找到字符串控件,拉进簇控件之中,连续拉取四个,分别修改标签名为学号、姓名、专业、联系方式。
b.搭建输入组件
在控件面板中找到数据容器库,从中拉取数组控件到前面板中。然后在字符串与路径库中找到字符串显示控件,拉进数组控件之中,然后将数组拉成两行四列。
c.确定按钮
在控件面板中找到布尔库,从中拉取确定按钮控件到前面板中。为了之后更直观一些,这里对确定按钮的属性进行一些修改。将按钮按下时按钮的颜色改为绿色,操作选定为释放时触发。如下图:
2)程序框图
结构方面主要使用到了事件结构和while循环结构。
程序框架主要分为三大块,一是将输入信息转化为数组并在显示数组中显示;二是将输入信息与读取的文本信息组成新的数组写入文本文件;三是整个逻辑框架的控制,确保程序仅在确定按钮按下后运行一次,避免陷入死循环,无限次往文本文件写入相同数据。
a.将输入簇转化为一维数组并输出
将信息输入簇直接连接到簇至数组转换控件,然后与已经搭建的表头数组利用创建数组控件创建新的数组并连接到数组显示控件
b.写入文本文件
首先利用应用程序目录控件获取当前VI所在的文件目录,利用创建路径控件与文件名形成完整的文件路径。利用读取带分隔符电子表格控件读取文本文件,然后使用数组插入控件与输入信息转换的数组形成新的数组,使用写入带分隔符电子表格控件写入文本文件中,完成信息录入。
c.事件控制
这里我没与设置超时控制,并不影响程序运行。如果有需要可以自行添加。
在事件结构选择器标签处右击,添加事件分支。
在事件界面内,事件源选择为确定按钮,事件选择为值改变
最后将确定按钮与while循环结构的循环条件相连。
到此信息录入程序便完成了。
二、信息读取
1、实现目标
- 可以显示所有人员信息
- 可以显示查找的人员信息
- 可以通过姓名查找到相应的人员信息
程序实现并没有考虑查询的人员不在信息库的情况,默认所查找的人员信息已录入。
2、框架搭建
1)前面板搭建
在控件面板,列表、表格和树库中拉取两个表格控件,一个用来显示所有的人员信息,一个用来显示查询结果。在字符串与路径库中拉取字符串控件作为查询信息的输入框。最后拉取一个确定按钮。
<
2)程序框架
依然是使用事件结构+while循环结构。查询使用for循环结构
a.文本文件读取、信息显示
文本文件路径读取和查询结果显示所使用的控件与前面信息录入差不多,因此不再赘述。主要说明一下for循环是如何实现查询的。
b.For循环实现查询
- 读取到的带分隔符电子表格通过自动索引隧道输入到For循环结构中
- 将常数1输入到索引数组**控件实现对输入的数组的第一列进行索引查询。
- 索引结果与输入的查询信息进行对比,相等则向For循环条件输入TURE(1)。则索引所在的行信息便通过隧道输出
- 输出的数组与已设定的数组组合成新数组输出到显示控件。
三、总结
整个系统实现起来比较简单,所使用的控件也比较基础。大家稍微学习一下便可轻松上手。
相关文档已上传至资源,可以按需下载
版权归原作者 好人兄 所有, 如有侵权,请联系我们删除。