Events 如何忽略LabView中在特定序列帧之外触发的事件?

Events 如何忽略LabView中在特定序列帧之外触发的事件?,events,event-handling,workflow,labview,Events,Event Handling,Workflow,Labview,在LabView中使用事件结构可能会令人困惑,尤其是在将它们与主要同步的工作流混合使用时。我的问题是,当一个事件结构存在于序列的一个帧中时,我如何强制它忽略工作流在序列的另一个帧中时触发的事件(例如,在特定按钮上单击鼠标向下) 目前,事件结构仅处理序列中正确帧处的事件,但如果在工作流位于前一帧时触发了事件,它也会处理这些事件,我希望它忽略事件结构所在帧中未触发的任何事件 这是我工作流程的一部分。如果在执行左侧部分时触发鼠标向下,我希望事件结构在序列到达时忽略这些事件。 我不知道如何刷新内置事件

在LabView中使用事件结构可能会令人困惑,尤其是在将它们与主要同步的工作流混合使用时。我的问题是,当一个事件结构存在于序列的一个帧中时,我如何强制它忽略工作流在序列的另一个帧中时触发的事件(例如,在特定按钮上单击鼠标向下)

目前,事件结构仅处理序列中正确帧处的事件,但如果在工作流位于前一帧时触发了事件,它也会处理这些事件,我希望它忽略事件结构所在帧中未触发的任何事件

这是我工作流程的一部分。如果在执行左侧部分时触发鼠标向下,我希望事件结构在序列到达时忽略这些事件。

我不知道如何刷新内置事件类型(如mousedown)的事件队列,但我通过创建一个对VI的静态引用并在上一个序列中将光标设置为busy(忙),禁用单击,成功地解决了这一问题。然后,当到达事件结构的序列时,我将光标从忙碌状态取消设置,这将重新启用单击。

我不知道如何刷新内置事件类型(如mousedown)的事件队列,但我通过创建一个对VI的静态引用并在上一个序列中将光标设置为busy(忙),禁用单击,成功地解决了这一问题。然后,当到达事件结构的序列时,我将光标从忙碌状态取消设置,这将重新启用单击。

我不知道如何刷新内置事件类型(如mousedown)的事件队列,但我通过创建一个对VI的静态引用并在上一个序列中将光标设置为busy(忙),禁用单击,成功地解决了这一问题。然后,当到达事件结构的序列时,我将光标从忙碌状态取消设置,这将重新启用单击。


我不知道如何刷新内置事件类型(如mousedown)的事件队列,但我通过创建一个对VI的静态引用并在上一个序列中将光标设置为busy(忙),禁用单击,成功地解决了这一问题。然后,当到达事件结构的序列时,我将光标从“忙”状态取消设置,这将重新启用单击。

将事件结构放置在主程序序列中,而不是将其放置在单独的循环中,并让它通过队列将每个事件的详细信息传递给主序列。然后,您可以通过在适当的点刷新队列来丢弃不需要的事件的详细信息


或者,您可以使用布尔控件确定事件循环是将事件详细信息发送到队列还是丢弃它们,并使用主序列中的局部变量切换布尔值。

而不是将事件结构放置在主程序序列中,将它放在一个单独的循环中,让它通过队列将每个事件的细节传递给主序列。然后,您可以通过在适当的点刷新队列来丢弃不需要的事件的详细信息


或者,您可以使用布尔控件确定事件循环是将事件详细信息发送到队列还是丢弃它们,并使用主序列中的局部变量切换布尔值。

而不是将事件结构放置在主程序序列中,将它放在一个单独的循环中,让它通过队列将每个事件的细节传递给主序列。然后,您可以通过在适当的点刷新队列来丢弃不需要的事件的详细信息


或者,您可以使用布尔控件确定事件循环是将事件详细信息发送到队列还是丢弃它们,并使用主序列中的局部变量切换布尔值。

而不是将事件结构放置在主程序序列中,将它放在一个单独的循环中,让它通过队列将每个事件的细节传递给主序列。然后,您可以通过在适当的点刷新队列来丢弃不需要的事件的详细信息


或者,您可以使用布尔控件确定事件循环是将事件详细信息发送到队列还是丢弃它们,并使用主序列中的局部变量切换布尔值。

您可以动态注册事件。注册是事件结构开始将事件排队的时间点,在您的情况下,当事件结构所在的VI进入运行模式(意味着它正在执行或它的一个调用者正在执行)时,就会发生这种情况。您可以对其进行更改,以便使用“事件注册”节点进行注册,然后仅从该点获取事件。取消注册后,将停止获取事件

杰克·邓纳威(Jack Dunaway)做了一个非常好的介绍,介绍了一些事件的细节

你可以找到它的代码


在LabVIEW 2013及更高版本中,有其他用于控制事件队列的选项,但我在这里不赘述。

您可以动态注册事件。注册是事件结构开始将事件排队的时间点,在您的情况下,当事件结构所在的VI进入运行模式(意味着它正在执行或它的一个调用者正在执行)时,就会发生这种情况。您可以对其进行更改,以便使用“事件注册”节点进行注册,然后仅从该点获取事件。取消注册后,将停止获取事件

杰克·邓纳威(Jack Dunaway)做了一个非常好的介绍,介绍了一些事件的细节

你可以找到它的代码


在LabVIEW 2013及更高版本中,有其他用于控制事件队列的选项,但我在这里不赘述。

您可以动态注册事件。注册是事件结构发生变化的时间点