LabVIEW加载和使用树型控件项目中的定制符号

简介: LabVIEW加载和使用树型控件项目中的定制符号

LabVIEW加载和使用树型控件项目中的定制符号


发现用于加载位于树型控件项目边上定制符号的树型控件方法,尝试了很多方法来使用但在显示定制符号的过程中遇到了问题。这些树型控件的属性和方法是怎样工作的?


解答:


使用下列方法来为树型控件添加符号,图或者图片。附件中的VI提供了使用树型定制符号的范例。TraverseTreeSetCustomSymbolsLLB通过使用Custom Item Symbols:Set to Custom Symbol Array方法向树型控件中添加了许多符号。Tree Image VI使用Custom Item Symbols:Set toCustom Symbol方法向树型控件中添加一个单独的符号。


LabVIEW提供了一系列内建符号以供用户使用。使用Custom Item Symbols:Set to Custom Symbol或CustomItem Symbols:Set to Custom Symbol Array方法来向该符号数组中添加一个或多个定制符号。使用Read BMP File, Read JPEG File, Read PNG File,或 Picture to Pixmap VI从磁盘中读取用于定制符号的图像文件。


使用Edit TreeItems:Add Item方法向树型控件中添加一个项目。也可以截断一个已经存在的项目。


将第二步中得到的新TAG连接到Active Item:Tag属性来制定当前活动TAG。


通过连接第一步中指定的符号索引至Active Item:Symbol Index属性来制定当前活动项目使用哪个符号。


通过连接一个TRUE值到Visible Items:Symbols Visible属性来保证该符号可见。该属性默认为真,故这一步通常并不必要。


内建的符号数组


LabVIEW提供了索引号为1-39的40个默认符号。索引0是一个空符号。不能加载一个定制符号至索引0因为该索引被保留为一个空符号。可以设置的最大索引号为32767,因此可以创建的最大的数组大小为32768。


使用CustomItem Symbols方法


如果使用CustomItem Symbols:Set to Custom Symbol方法,LabVIEW会提示给出索引以及符号本身。如果指定了一个位于1到39之间的索引值,LabVIEW将使用指定的定制符号来覆盖其内建的符号。如果想保留内建的符号为原始状态,请在添加符号时,为定制符号指定大于或等于40的索引值。


如果使用CustomItem Symbols:Set to Custom Symbol Array方法,LabVIEW会提示给出一个符号数组。所指定的数组将覆盖所有索引值从0开始的符号。然而,LabVIEW将忽略所指定的索引值为0的图片。如果想要在添加符号数组时保留内建的符号,请创建一个含有40个元素的常量图像数组,其中的每个元素都为空图像。在连接数组到Custom Item Symbols:Set to Custom Symbol Array方法前附加这个常量到定制符号数组。LabVIEW将忽略所有空图像,使得前40个元素保留原始状态,并在索引为40的地方开始添加第一个定制符号。


如果覆盖了一些内建符号,可以通过使用Custom Item Symbols:Revert to Built In Symbol或者Custom Item Symbols:Revert All to Built In Symbols方法来分别恢复单个内建符号和恢复所有内建符号。


仅可以使用CustomItem Symbols:Get Symbol和Custom Item Symbols:Get SymbolArray方法来重新找回定制符号。如果针对索引为1至40的符号使用这些方法,则方法将仅针对那些覆盖内建符号的定制项目返回相应图像。


6834007b75170c10d0b5302915244f0c.png



编辑


添加图片注释,不超过 140 字(可选)



LabVIEW、LabVIEW开发、LabVIEW编程、LabVIEW程序


上文中提到的例子和资料,均在word中的附件里,可点击下载。进一步了解,可联系们。

相关文章
Altium Designer中元件重叠放置时,如何消除报错
Altium Designer中元件重叠放置时,如何消除报错
668 0
|
6月前
|
C++
MFC基本控件-静态文本的使用
MFC基本控件-静态文本的使用
|
9月前
LabVIEW簇中不能同时包含输入输出控件
LabVIEW簇中不能同时包含输入输出控件
68 0
LabVIEW簇中不能同时包含输入输出控件
|
9月前
LabVIEW强制子VI前面板停留在其他面板前面
LabVIEW强制子VI前面板停留在其他面板前面
107 1
|
9月前
LabVIEW动态加载VI到子面板速度优化
LabVIEW动态加载VI到子面板速度优化
59 0
|
小程序 JavaScript
小程序实现竖行布局视图(类表格)
小程序实现竖行布局视图(类表格)
117 0
|
C#
C#之四十一 在Winform中从外部拖动节点到树形结构
C#之四十一 在Winform中从外部拖动节点到树形结构
82 0
关于 Qt图形视图框架自绘图元放到左边和上边之外,部分在内进行拉伸后,拉伸多余的区域无法碰撞 的解决方法
关于 Qt图形视图框架自绘图元放到左边和上边之外,部分在内进行拉伸后,拉伸多余的区域无法碰撞 的解决方法
关于 Qt图形视图框架自绘图元放到左边和上边之外,部分在内进行拉伸后,拉伸多余的区域无法碰撞 的解决方法
|
vr&ar 图形学
【Unity3D 灵巧小知识点】 ☀️ | 层级面板中的 ‘小手指‘ 作用: 在Scen中将该物体设置为不可选中状态
Unity 小科普 老规矩,先介绍一下 Unity 的科普小知识: Unity是 实时3D互动内容创作和运营平台 。 包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助 Unity 将创意变成现实。 Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和3D内容,支持平台包括手机、平板电脑、PC、游戏主机、增强现实和虚拟现实设备。
【Unity3D 灵巧小知识点】 ☀️ | 层级面板中的 ‘小手指‘ 作用: 在Scen中将该物体设置为不可选中状态
文字处理技术:视图坐标都是在父视图的相对坐标
文字处理技术:视图坐标都是在父视图的相对坐标
92 0

热门文章

最新文章