事件处理程序冻结前面板
Event handler freezes Front panel
我在 while 循环中使用简单的事件处理程序。
我有布尔按钮的值更改事件。有些代码需要 3-4 秒才能执行。
问题是在此期间我无法在“前面板”上单击任何内容。当事件处理程序处理某些情况时是否可以允许用户单击其他控件(据我了解事件处理程序能够收集所有事件并尽快处理它们)?
我认为您需要重组您的应用程序以使其更具响应性。 LabVIEW 最佳开发实践建议让事件处理程序代码尽可能快。处理此问题的方法之一是在此布尔控件发生变化时将消息发送到队列中,并在单独的循环中处理队列。
我完全同意 Mikhail N Zakharov 的回答,但无论如何,只需取消选中名为 Lock panel until this event complates[=11] 的复选框即可轻松解决您的问题=]
请看下面的截图。
PS。再次强调,让事件结构工作 3-4 秒并不是最佳实践。
我在 while 循环中使用简单的事件处理程序。
我有布尔按钮的值更改事件。有些代码需要 3-4 秒才能执行。
问题是在此期间我无法在“前面板”上单击任何内容。当事件处理程序处理某些情况时是否可以允许用户单击其他控件(据我了解事件处理程序能够收集所有事件并尽快处理它们)?
我认为您需要重组您的应用程序以使其更具响应性。 LabVIEW 最佳开发实践建议让事件处理程序代码尽可能快。处理此问题的方法之一是在此布尔控件发生变化时将消息发送到队列中,并在单独的循环中处理队列。
我完全同意 Mikhail N Zakharov 的回答,但无论如何,只需取消选中名为 Lock panel until this event complates[=11] 的复选框即可轻松解决您的问题=]
请看下面的截图。
PS。再次强调,让事件结构工作 3-4 秒并不是最佳实践。