LabVIEW趣味编程之使用图片控件实现文字的滚动显示

LabVIEW是一种简单易学、形象直观的图形化编程语言,也称为G语言,具有丰富的同传统仪器外观类似的控件库(如旋钮、仪表盘、温度计、波形图表等),可以构建漂亮专业的用户界面,同时,内部提供了庞大的函数库(如数据采集、GPIB、串口控制、数据处理、数据显示及数据存储等),可以满足各行业各领域的开发需求。另外,由于它并非一种封闭的语言,而是具有强大的外部接口能力,可以实现与C/C++、Basic、Matlab等编程语言互通的能力,现在,LabVIEW不仅仅局限于虚拟仪器软件类的开发,而是已经发展成为了一种通用的、完善的、开放的高级编程语言。

示例说明

程序运行界面如下图所示:

程序界面比较简单,包括三个部分,其中最主要部分是中间的图片控件,用以显示滚动的文字,程序运行时文字首先从左边显示到右边,当文字的右边边界将要移出图片控件的右侧时,改变移动方向向左显示,当文字的左边边界将要移出图片控件的左侧时,改变移动方向向右显示,按这个规则依次循环显示。左侧部分仅仅是一个logo图片,右边部分是一个退出按钮,点击该按钮时退出程序。

程序主代码实现

主程序框架使用while循环结构实现,每隔40ms执行一次循环,在每次循环中进行文字的滚动显示。在图片控件中每次显示文字内容前,都要重新计算显示这些文字需要的矩形区域信息,矩形区域信息包括了大小信息和位置信息,这儿每次计算的矩形大小不变,只是相对位置发生了变化,本例中只是水平位置发生了变化。在移位寄存器中保存上次的矩形区域的左边位置值,每次循环中向左/右进行步进就可以达到文字的滚动效果。根据这个思路编写的程序框图代码如下图所示:

这儿重点讲下程序中使用的两个主要的关键函数,分别是“获取文本矩形区域”和“在矩形中绘制文本”函数,下面分别进行说明。

1、“获取文本矩形区域”函数

该函数返回待显示文字的矩形区域信息,为左侧、顶部、右侧和底部尺寸(以像素为单位)的簇类型,其参数原型如下图所示:

在本例中,对于待显示的文字,字体设置为用户自定义字体,对齐参数设置为(左边、中心),原点参数(垂直、水平)中,垂直设置为图片控件的高度方向上的中心值,即图片控件的高度/2,水平设置为在每次循环中以3为步进值进行右移/左移。

2、“在矩形中绘制文本”函数

该函数在指定的矩形区域中绘制文本内容,其参数原型如下图所示:

在上个“获取文本矩形区域”函数已经获得了待显示文字的矩形区域,那么再使用这个函数就可以在图片控件中显示当前循环中的文字了。这个函数在显示文字时也可设置其它的信息,如文本的方向、颜色、背景色信息等,本例中设置文字的颜色为绿色。

结论

从这个小例子中可以看出,在LabVIEW平台中使用图片控件实现文字的滚动显示,相对来说比较简单,只需要大家熟悉图片控件一些常用函数的使用方法,以及while循环中移位寄存器的使用就可以了。另外,在这个例子的基础上,也可以进一步对代码进行改进,实现如垂直方向的滚动显示、特殊路径的显示或其它效果显示等。

大家也可以参考这个视频加深这部分内容的理解:来自LabVIEW编程语言的节日祝福

大家加关注并私信回复:LabVIEW8,可获取该文章对应的LabVIEW原程序下载。

欢迎加关注,共同交流。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181004A0E3BV00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券