LabVIEW开发者必备技巧宝典第四部分

上传人:ldj****22 文档编号:35451973 上传时间:2018-03-16 格式:PDF 页数:19 大小:643.81KB
返回 下载 相关 举报
LabVIEW开发者必备技巧宝典第四部分_第1页
第1页 / 共19页
LabVIEW开发者必备技巧宝典第四部分_第2页
第2页 / 共19页
LabVIEW开发者必备技巧宝典第四部分_第3页
第3页 / 共19页
LabVIEW开发者必备技巧宝典第四部分_第4页
第4页 / 共19页
LabVIEW开发者必备技巧宝典第四部分_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《LabVIEW开发者必备技巧宝典第四部分》由会员分享,可在线阅读,更多相关《LabVIEW开发者必备技巧宝典第四部分(19页珍藏版)》请在金锄头文库上搜索。

1、电子发烧友网论坛出品电子发烧友网论坛出品 PowerPower byby 电子发烧友论坛电子发烧友论坛LabLabVIEWVIEW 开发者必备技巧宝典开发者必备技巧宝典第第四四部分部分LabVIEW 开发者必备技巧宝典由电子发烧友网论坛出品,集结众多大牛、工程师的经验之作。为广大LabVIEW 开发工程师提供开发、调试技巧,助力 LabVIEW 工程师。电子发烧友网论坛出品电子发烧友网论坛出品 1目录目录【测试之王 LabVIEW】Default 的陷阱.2【测试之王 LabVIEW】轻松实现任意格式字符串到时间戳的转化 3【测试之王 LabVIEW】修改菜单前景、背景颜色.4【测试之王 La

2、bVIEW】VI 的本地化.5【测试之王 LabVIEW】如何拆分双精度数的整数部分和小数部分.7【测试之王 LabVIEW】LabVIEW 与有道词典的 BUG.8【测试之王 LabVIEW】如何在前面板制作一个浮动的控件.9【测试之王 LabVIEW】如何用 LabVIEW 关闭 Windows 下的应用程序.10【测试之王 LabVIEW】解析 LabVIEW 布尔控件的 6 个机械动作属性.15【测试之王 LabVIEW】自己写的数字信号包络检波.17电子发烧友网论坛出品电子发烧友网论坛出品 2【测试之王【测试之王 LabVIEWLabVIEW】DefaultDefault 的陷阱的陷

3、阱先贴上一张图 大家可以照着拉拉看程序 执行看看结果有甚么不一样因为 For Loop 最少执行次数是 0 次 所以可以不执行内部的 code 以至于输出的值会变成 Default 所以并不是 99 这个情形我是发生在以 Array Index 来当作循环次数 结果 Array 是空 Array 所以并没有执行 For Loop 造成程序执行错误电子发烧友网论坛出品电子发烧友网论坛出品 3【测试之王【测试之王 LabVIEWLabVIEW】轻松实现任意格式字符串到时间戳的转化】轻松实现任意格式字符串到时间戳的转化以前经常因为用到数据库,要做字符串和时间戳的转换,尤其是字符串转换为时 间戳的,想

4、当头疼。但自从有了下面的这个簇,转换便得很 easy 了:通过格式 化字符串输入,可以获取日期时间中的任意一项,然后重新填充簇就可以了, 是 不是 so easy 呢? 代码也附上了,8.2 版的。电子发烧友网论坛出品电子发烧友网论坛出品 4【测试之王【测试之王 LabVIEWLabVIEW】 修改菜单前景、背景颜色修改菜单前景、背景颜色LV 的菜单相对来说功能比较简单,比如无法实现图标菜单等。但是 LV 的菜单在 LABVIEW.ini 中隐藏了一些设置选项,通过设置选项可以对 LV 菜单做一些全局 设置,实现特色菜单。在 LABVIEW.ini 中添加下列两个选项,可以修改菜单背景色和前景

5、色。 menu.background=FF00FF menu.foreground=00FFFF电子发烧友网论坛出品电子发烧友网论坛出品 5【测试之王【测试之王 LabVIEWLabVIEW】 VIVI 的本地化的本地化编程语言中的本地化问题,通常指的多语言。对于一般的 LABVIEW 工程师,很少 会遇到本地化的问题,但是我们经常会遇到界面控件标题的显示问题。由于各个 技术领域的专业性,往往用户对 VI 界面的显示有自己的要求,其中就包括控件 的标题问题。这可以理解成本地化的特殊情况。对于一般小的项目,通常是根据客户现场的要求,做相应的修改。但是对于较大 的项目,这样做是不现实的。LV 中的

6、控件包括标签和标题,其中标签相当于变量名,因此运行时不可更改。 所以在编辑 VI 时,应显示标题,隐藏标签。我们所说的修改指的是控件的标题, 而不是标签。修改控件的标题,需要通过 VI 的引用,遍历所有控件,找到需要控件的引用, 然后通过属性节点修改其标题。这就要求我们必须事先记录所有控件的标签名 称,作为查找依据。对于需要批量修改,实现本地化的应用,这样处理是非常复杂的。其实,LV 本 身就提供了这样的能力,通过导入、导出字符串,可以很容易实现 VI 的本地化。 在 LV 的工具菜单中,提供了导入、导出菜单项,如下图所示:菜单命令的使用非常简单, 下面说明一下它们的使用方法, 首先创建一个前

7、面板, 包括两个示例控件,标题分别为速度和温度。电子发烧友网论坛出品电子发烧友网论坛出品 6执行导出字符串命令后,存储在文本文件中。导出的文本文件中包含 VI 的版本号、VI 的名称、控件的 ID、控件的描述、控件 的工具条提示、控件的标签以及控件的标题等等。修改这个文本文件中的标题部分,然后导入这个文本本件,就可以批量自动修改 控件的标题,实现 VI 的本地化。以上操作是通过 LV 的菜单实现的,在执行文件中一般不会显示工具菜单项,这 种情况下,可以通过 VI 的方法节点,编程导入。导出字符串方法只能在编辑环境使用, 而导入字符串方法节点可以在运行环境使 用。电子发烧友网论坛出品电子发烧友网

8、论坛出品 7【测试之王【测试之王 LabVIEWLabVIEW】如何拆分双精度数的整数部分和小数部分】如何拆分双精度数的整数部分和小数部分在处理双精度数时,经常会涉及到拆分双精度数的整数和小数部分。有一下 几种解决方案:一、解决这个问题我们首先想到的可能是通过几个取整函数,先求取整数部分, 然后利用差值求取小数部分。取整函数包括最近取整、向上取整、向下取整, 由 于涉及到舍入的问题,所以拆分起来比较困难。二、利用字符串的丰富函数拆分。双精度数转换为字符串后,通过查找小数点的 位置,把字符串分解为两个部分,然后再转换为数值。三、利用求商和余数函数拆分。这是我今天要介绍的一个小技巧,对于求商和余

9、数函数,任何情况下,返回的商都是整数,而余数可以是小数,也可以是整数。 利用除数为 1,就可以拆分双精度数,如下图所示。电子发烧友网论坛出品电子发烧友网论坛出品 8【测试之王【测试之王 LabVIEWLabVIEW】LabVIEWLabVIEW 与有道词典的与有道词典的 BUGBUG不知道有没有人遇到过这种问题:删除某局部变量原控件也被删除了;ctrl 拖 动局部变量原控件也被复制了,原因很简单,你开着有道词典或者金山词典的划 词翻译的功能呢,关掉后即可恢复正常!电子发烧友网论坛出品电子发烧友网论坛出品 9【测试之王【测试之王 LabVIEWLabVIEW】如何在前面板制作一个浮动的控件】如何

10、在前面板制作一个浮动的控件今天在写一个程序的时候,想要在前面板制作一个浮动的控件,使程序运行的时 候,控件随前面板滚动条的拉动,一直浮动在一个固定的区域。刚开始太想当然 了,以为用前面板的位置属性和控件的位置属性相减,就可以完成了,最后才发 现,原来前面板的位置是绝对位置,而控件的位置是相对位置,结果就杯具了。想了老半天,还是没想明白。最后一不小心看到了前面板的内容区域属性才恍然大悟。不过时间已经浪费 了 大半天了。而且这个在网络上搜索还没有,所以想到要分享一下,以免后来人也 如同我一般杯具。如何制作一个这样的浮动控件呢?其实很简单,只要用前面板的“内容区域” 属 性就可以了,(这里说明下,千

11、万别钻牛角尖,而且用前面板的位置属性哦) 下面是代码的图片。电子发烧友网论坛出品电子发烧友网论坛出品 10【测试之王【测试之王 labviewlabview】如何用】如何用 LabVIEWLabVIEW 关闭关闭 WindowsWindows 下的应用程序?下的应用程序?在 LabVIEW 中,我们可以透过呼叫 WIN32 API 来做取得或控制有关 Windows 作 业系统的相关信息。若要关闭应用程序,需要用到 user32.dll 这个动态连结数 据库。请依以下步骤进行: 1. 在程序设计区放置 Call Library Function Node,选择 C:WindowsSystem3

12、2user32.dll。2.Function name 选择 FindWindowA,首先将 return type 名称改为 hWnd,再 加入以下两个参数: lpClassName lpWindowName电子发烧友网论坛出品电子发烧友网论坛出品 113. 接下来同样放置一个 Call Library Function Node 来呼叫 user32.dll。在 Function name 选择 SendMessageA,return type 改为 LRESULT,并且加入以下 四个参数: hWnd Msg wParam lParam电子发烧友网论坛出品电子发烧友网论坛出品 12电子发烧

13、友网论坛出品电子发烧友网论坛出品 134. 连接一个常数 0 至 FindWindowA 函数的 lpClassName,同时将想要关闭的 应用程序名称连接至 lpWindowName。 5. 将 FindWIndowA 函数的返回型态(return type): hWnd 连接至 SendMessageA 函数的 hWnd 输入端,并且将十进制 16(十六进位则为 10)连接至 Msg 参数, 最 后将 wParam 和 lParam 参数与常数 0 连接。最后,在 Window Name 中输入欲关闭的应用程序,如我现在想要关闭使用中的 小画家,将视窗名称输入,执行 VI 后未命名 - 小

14、画家便会被关闭了。电子发烧友网论坛出品电子发烧友网论坛出品 14电子发烧友网论坛出品电子发烧友网论坛出品 15【测试之王【测试之王 LabVIEWLabVIEW】解析】解析 LabVIEWLabVIEW 布尔控件的布尔控件的 6 6 个机械动作属性个机械动作属性在学习 LabVIEW(简称 LV)时,布尔控件是常用的控件。布尔控件分为按钮型控 件和开关型控件,LV 内部并没有区分按钮型还是开关型。这两种布尔控件可以 根据需要相互转换,通过配置布尔控件的机械动作属性来实现转 换。布尔控件“值改变”的瞬间是非常重要的,在真实生活中也存在这 样的现象。比如手持型的计数器,我们希望按下一个按钮,计算增加 1。我们就 需要考虑机械动作了,是需要按下时计算加 1,还是释放时计算加 1,还是按着 不释放就一直加。正确的做法是在释放按钮时计算增加 1,该类动作称为“释放 时转换”。 LV 布尔控件的机械动作分成 6 种,最本质的区别在于转换生效的瞬间和 LV 读取控件的时刻。右键前面板的布

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号