LabVIEW布尔值属性节点是变体的原因

简介: LabVIEW布尔值属性节点是变体的原因

LabVIEW布尔值属性节点是变体的原因


有一个布尔控件。当我建值或值(信号)属性节点时,它显示为variant(变体)类型。为什么是这样?


解决方案


这是因为试图从设为Latching(触发)机械动作的布尔控件创建属性节点。无法读取或写入通过触发机械动作设置的布尔值,因为可能会发生race condition(竞争状态)。当布尔值设置为触发机械动作时,这意味着在更改布尔值后,一旦VI读取其值,它将恢复为默认值。因此,根据VI或属性节点读取布尔值的时间,可能会错过值的更改。



请尝试将布尔控件的机械动作更改为Switching(转换)。这将允许同时使用Value和Value(Signaling)属性节点,设置为转换类机械动作时,会注意到现在属性节点将是布尔类型而不是变体类型,如下所示:


布尔属性节点


在仅按一次时,具有转换机械动作的布尔值不会恢复为默认值。


相关信息


尝试将布尔值分配给被引用为Control类型的前面板控件时,也会发生此行为,即使使用To More Specific Class函数将其类型转换为布尔值也是如此。这是因为控件参考没有被转换为具有特定机械动作的布尔值。


因为属性节点无法判断控件是否被键入为触发或转换布尔值,所以属性节点不确定提供的确切属性集/期望的确切类型的数据,并且默认强制传递给它的数据变体。




需要说明的是,上述的例程和文档,都是可以下载的,双击即可打开,其中压缩文件是可以采用粘贴复制的方式,拷贝到硬盘上。这不是图片,各位小伙伴看到后尝试一下,这个问题就不用加微信咨询了。有关LabVIEW编程、LabVIEW开发等相关项目,可联系们。附件中的资料这里无法上传,可去公司网站搜索下载。

相关文章
|
4月前
|
SQL 定位技术 API
GEE python:按照矢量中的几何位置、属性名称和字符串去筛选矢量集合
GEE python:按照矢量中的几何位置、属性名称和字符串去筛选矢量集合
61 0
|
12月前
|
编译器 C#
C#之十七 局部类型
C#之十七 局部类型
27 0
|
移动开发 文字识别 算法
论文推荐|[PR 2019]SegLink++:基于实例感知与组件组合的任意形状密集场景文本检测方法
本文简要介绍Pattern Recognition 2019论文“SegLink++: Detecting Dense and Arbitrary-shaped Scene Text by Instance-aware Component Grouping”的主要工作。该论文提出一种对文字实例敏感的自下而上的文字检测方法,解决了自然场景中密集文本和不规则文本的检测问题。
1932 0
论文推荐|[PR 2019]SegLink++:基于实例感知与组件组合的任意形状密集场景文本检测方法
|
3月前
|
JavaScript 前端开发 Java
函数形状的定义方式在编程中可以有多种,具体取决于使用的编程语言和上下文。以下是几种常见的定义方式:
函数形状的定义方式在编程中可以有多种,具体取决于使用的编程语言和上下文。以下是几种常见的定义方式:
29 3
|
2月前
|
JavaScript
交叉类型的主要用途是表示对象的合成
交叉类型的主要用途是表示对象的合成
19 0
|
4月前
|
Java Spring
LabVIEW中将枚举与条件结构一起使用
LabVIEW中将枚举与条件结构一起使用
50 2
|
4月前
|
C语言
LabVIEW局部变量和值属性节点之间的区别
LabVIEW局部变量和值属性节点之间的区别
84 0
|
4月前
|
JavaScript
函数形状有几种定义方式;操作符infer的作用
函数形状有几种定义方式;操作符infer的作用
39 3
第4章 MATLAB编程基础——4.6 M文件中变量的检测与传递
第4章 MATLAB编程基础——4.6 M文件中变量的检测与传递
|
存储
Seurat 对象添加任意低维嵌入数据
本文分享了一种将任意来源的低维嵌入数据添加到 Seurat reductions数据槽中的实现方法
172 0