• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 测试测量 > 技术文章 > LabWindows/CVI虚拟仪器设计技术基本控件使用之: Tab 控件

LabWindows/CVI虚拟仪器设计技术基本控件使用之: Tab 控件

录入:edatop.com    点击:

1.4 Tab 控件 

1.4.1 Tab 控件设计方法 

Tab 控件类似分隔标签或一组文件夹上的标签,使用Tab 控件可以在应用程序窗口或对话框中的同一区域定义多个页面。该控件包含了一个或多个panel 面板集合。在设计时和运行时,可以设置其属性来控制Tab 控件的外观,如可设置标签以多行形式显示,将标签放在Tab 控件的上下左右各种位置,并可在标签上显示图标。

 

LabWindows/CVI 中的Tab 控件最初是由Panel 面板转换而来,控件中的每个页面都有自己的句柄(类似于面板句柄),可以认为Tab 控件是一个容器,里面包含了面板的集合,因此,Tab 控件内也可重复内嵌Tab 控件。正是由于Tab 控件具有这些特点与属性,在使用某些函数时,如SetCtrlVal 、GetCtrlVal 等时,参数中的面板句柄设置应区分是一般面板句柄还是Tab 页面句柄。

 

在LabWindows/CVI 中,Tab 控件是最为特殊的一个控件,这主要是因为引入了容器中的容器概念(笔者定义)。与其他语言最大的区别是,在LabWindows/CVI 中,一个面板即为一个容器,所有的控件必须放置在这个容器内,不允许在这个面板上存在其他的容器,如果换个角度,把容器看作句柄,也就是说,一个面板只有一个句柄,控件没有句柄,只有ID(ActiveX 控件除外),即使是Radio Group 这类控件,严格上来说也是由Tree 控件衍生而来,不具有控件句柄。这样设计的好处是,LabWindows/CVI 的消息传递是扁平化的,只在一个容器中进行消息循环,事件响应及时;缺点也显而易见,不能设计出像Visual Basic 或Delphi 中非常完美的控件组或页框(如Frame),但这也是LabWindows/CVI 设计的一大优点,简化设计思路,使程序设计者更加专注于逻辑系统设计而非语言本身。举例说明,如果在Visual Basic 或Delphi 中建有一个工程,Form (窗体)里面有一个Tab 控件,Tab 控件内嵌套一个Numeric 控件,可以对其进行属性操作,即获得或设置属性值;同理,在LabWindows/CVI 集成开发环境中也建有一个工程,Panel(面板)里面有一个Tab 控件,控件内嵌套一个Numeric 控件,则引用方法如下:

 

(1)Visual Basic 语句      

赋值  

Form.Tab.Numeric.value = 1      

取值  

x = Form.Tab.Numeric.value      

(2)Delphi 语句  

赋值  

Form.Tab.Numeric.value := 1     

取值  

x := Form.Tab.Numeric.value     

(3)LabWindows/CVI 函数    

赋值(函数语句取自本例程)

panelHandle = LoadPanel (0, "Tab 控件.uir", PANEL); GetPanelHandleFromTabPage (panelHandle, PANEL_TAB, 0, &TabPanelHandle); SetCtrlVal (TabPanelHandle, TABPANEL_NUMERICTHERM, temp); 取值(函数语句取自本例程)

panelHandle = LoadPanel (0, "Tab 控件.uir", PANEL); GetPanelHandleFromTabPage (panelHandle, PANEL_TAB, 0, &TabPanelHandle); GetCtrlVal (TabPanelHandle, TABPANEL_NUMERICKNOB, &temp);    

 

有意思的是,Visual Basic 和Delphi 对控件属性的引用中用了3 个".",这3 个"."对应于LabWindows/CVI 的3 个函数语句,三种语言之间,属性获得或设置都是从容器到实例的逐次递进引用,逻辑上是相同的,只是表现方式不同,其逻辑关系如图1-9 所示。

(a) Visual Basic 或Delphi (b)LabWindows/CVI

图1-9 属性获得或设置逻辑关系

点击浏览:矢量网络分析仪、频谱仪、示波器,使用操作培训教程

上一篇:LabWindows/CVI虚拟仪器设计技术场景与游戏设计之:时钟制作
下一篇:LabWindows/CVI虚拟仪器设计技术基本控件使用之:Ring 箭头设置

微波射频测量操作培训课程详情>>
射频和天线工程师培训课程详情>>

  网站地图