【LabVIEW】数值、下拉框、字符串控件使用汇总

一、值改变事件获取数据最新值/属性节点不是最新值

需求:类似WinForm里的TextChanged事件,界面上修改数据的值,触发事件进行程序计算后赋值给其他控件显示。
本来是用属性节点获取输入的最新值,但运行后发现属性节点获取到的不是输入的最新的值而是上一次的值。
更诡异的是断点运行的时候,获取到的就是最新值了= =
(因为实际项目中这个控件是在簇里所以我用属性节点,用簇解绑也是一样的现象)
(写了简单的例子不知道为什么就没有这个现象= =)

解决:
获取最新值不用属性节点而用事件的“新值”。

 

二、如何删除数值控件单位标签

在常量右连“单位标签”处按鼠标右键,点击“创建单位字符串”菜单,在弹出对话框中,点击“删除单位”按钮。

 

 

三、动态设定数值控件域宽

1、手动编辑方法

右键——显示格式——勾选使用最小域宽——填写总数字长度——左侧填充零

2、动态设定方法

添加一个属性节点——选择数值文本——格式字符串
在属性输入点右键——创建——常量
输入格式字符串:%08x

其他格式见官方说明:格式说明语法

 

四、如何给输入控件赋值

右键输入控件——创建——属性节点——值
然后右击这个属性节点——转换为写入,再给它连接到相应数据类型的输入数据即可。(类似方法创建局部变量也可以)

 

五、下拉列表动态赋值

实现给下拉框赋值0~31的值。

新get了数组包含不同数据类型时的创建数组方法:捆绑到簇再创建数组,然后插入数组。

 

六、使文本框滚动条自动停在最下方

字符串显示控件的属性节点里有(文本 -> 滚动条位置)
只要每次向字符串显示控件中写入数据时给“滚动条位置”属性写入无穷大值就可以了。

 

七、如何实现类似Winform里Label的功能

 

LabVIEW里的修饰标签是不能动态修改内容的,要实现与Winform里的Label类似功能,可以通过文本框实现。
(1)选择 经典——经典字符串及路径——简易字符串
(其他样式的文本框背景色要么不能修改背景色,要么需要通过属性节点修改,不合适)


(2)通过工具选板,第一个颜色框框选好和界面背景一样的颜色,第二个框框设置为透明(这个实现隐藏边框),然后点击文本框控件,就实现控件隐藏了。



在程序里还是当文本框一样用,通过属性节点等改变文本值。

 

八、如何通过程序改变LabVIEW中输入控件或显示控件的标签

在LabVIEW中,运行VI时你不能改变专有标签的值. 专有标签是输入控件或显示控件所拥有的标签,也是属性节点的标签项。这些项只有在程序开发的时候可以被改变,这是因为它是用来在VI运行时辨别VI输入控件和显示控件的。当通过属性节点试图改变标签时会产生错误代码1073。

 

一种更改输入控/输出控件的“标签”的简单方法是使用标题来标识显示控件/输入控件而不是通过专有标签。你可以在程序执行或开发时改变标题。如果要使用标题而不是标签作为标识符,我们可以使用三个属性节点使来让标题设为可见,标签设为隐藏,或更改标题的文本。用于执行此操作的三种属性节点分别为: 标题可见,标签可见和标题文本 。

 

在能够设置前面板显示控件或输入控件的标题属性之前,必须首先通过右键单击前面板上的输入或者显示控件并选择显示项>标题来创建标题 。如果在设置或获取标题可见和标题文本属性之前未执行此操作,则会收到以下错误。

 

Error 1320: In run mode, LabVIEW cannot get or set a property for a control part that has not been created.

https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z0000019KbOSAU&l=zh-CN

 

九、字符串与时间标识之间的转换

 

posted @ 2021-11-25 13:38  不溯流光  阅读(3072)  评论(0编辑  收藏  举报