labview事件结构,事件超时创建常量为0怎么理解?超时分支怎么处置?

labview事件结构,事件超时创建常量为0怎么理解?超时分支怎么处置?,第1张

事件的执行需要消耗时间

如果在设定的“”超时“”时间内没有完成事件,那么久终止响应当前时间进入超时事件

超时时间设置为-1代表永不超时,永远不会进入超时事件,事件未完成程序会一直等待。

当超时时间设置为0,很多事件都不会正常响应。

超时时间可以自己定义,比如超时后执行控件初始化等等根据需要自行定义。

超时就是字面上的意思,超过设定的时间。超时事件就是指超过设定时间这一事件。

举个例子,你和某人约定8点钟在某处见面谈事情,结果等到了8:30人还没出现,于是你给对方打电话。这其中,30分钟其实就是你设定的超时时间,过了8:30,就超时了,超时事件触发,你给对方打电话,打电话这个行为就是超时事件的分支框内所对应的代码。

换成LabVIEW里的例子。串口通讯在设置时可以配置一个超时时间,比如10秒,那么串口在读取时,若串口缓冲区内没有接收到数据,等待10秒之后,超时事件触发,串口读取函数就不再等待了,继续往下运行。

不知我这样解释你能否听明白。

事件结构可用来响应用户界面 *** 作,如点击鼠标、按下键盘、退出程序等 *** 作。事件结构的工作原理和内置的条件结构相似。在VI程序中设置事件即可对数据流进行编程控制,在事件没有发生之前程序一直处于等待状态,如果事件触发就会响应执行相应的代码。

事件结构可包含多个分支,每个分支对应一个独立的事件处理程序。一个分支配置可处理一个或多个事件,但每次只能处理这些事件中的一个事件。事件结构执行时,将等待先前指定事件的发生,待该事件发生后即可执行事件相应的条件分支。一个事件分支处理完毕后,事件结构也就执行完毕了。事件结构并不通过循环来处理多个事件。

当用户输入的用户名是“LabVIEW”,密码是“123456”时,单击“确定”按钮后,d出“登陆成功”对话框;当用户输入用户名和密码信息是其他内容时,单击“确定”按钮后,d出“用户名和密码错误,请重新输入”对话框;当用户点击“取消”按钮时,则清除用户名和密码文本框中的信息;当用户点击“停止”按钮时,程序结束运行。

创建程序步骤

步骤一:新建一个VI。打开前面板,选择“控件”→“新式”→“字符串与路径”→“字符串输入控件”选项,将其添加到前面板上,修改标签为“用户名”。用同样的方法添加一个“密码”输入控件,并用鼠标单击控件,选择快捷菜单中的“密码显示”,这样在输入字符时显示的是“*”。选择“控件”→“新式”→“布尔”选项,将“确定按钮”、“取消按钮”和“停止按钮”添加到前面板中。

步骤二:添加事件结构。打开程序框图,选择“编程”下的“结构”子面板中的“事件结构”对象,将其添加到程序框图中。设置“事件超时”端口的输入值为常量“100”。使用鼠标右键单击事件结构边框,在d出的快捷菜单中选择“添加事件分支…”选项,则d出“编辑事件”对话框,在对话框中的“事件源”栏选择“确定按钮”,在“事件”栏选择“值改变”。然后点击“确定”按钮,这样就为“确定”按钮添加了事件。用同样的方法为“取消”按钮添加取消事件。

步骤三:添加While循环结构。在程序框图中添加一个While循环结构,把“停止”按钮输出端与循环条件端口连接,并在循环体内添加一个定时器对象,设置定时时间为“100”。

步骤四:编辑按钮事件程序。在“确定按钮:值改变”事件程序框中,添加两个“等于?”函数对象、一个“与”函数对象。第一个“等于?”函数对象用于验证用户名框内的输入信息与字符串常量“LabVIEW”是否相同,第二个“等于?”函数对象用于验证密码框的输入信息与字符串常量“123456”是否相同,“与”函数对象用于验证前面两个信息的比较结果。在事件框中添加一个条件结构,在“真”分支中添加一个“单位钮对话框”(在“对话框与用户界面”)对象,并设置其“消息”输入端为字符串常量“登录成功”;在“假”分支中添加一个“单按钮对话框”对象,并设置其“消息”输入端为字符串常量“用户名和密码错误,请重新输入”。

步骤五:编辑取消按钮事件程序。首先在程序框图中使用鼠标右键单击“用户名”对象,在d出的快捷菜单中选择“创建”下的“局部变量”选项,为“用户名”对象创建一个局部变量。用同样的方法为“密码”对象创建一个局部变量。在“取消按钮:值改变”事件框图中添加一个空字符串常量,并将输出端分别与两个局部变量的输入端连接,这样就可以清空前面板两个文本款的内容了。

步骤六:运行程序,查看结果


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11639168.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存