资源描述:
《LabWindows CVI Easy tab control使用教程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、LabWindows/CVI中EasyTabControl的使用教程2016年12月4日,星期日狄阁老最近在使用国产板卡过程中发现,很多板卡的测试软件都用到了类似于tab的控件,但是子界面很多,又要团队完成的,如果还使用Tab控件就非常麻烦。在CVI使用中,发现CANVAS控件和easytab.fp可以完成Tab控件的任务,下面开始介绍如何使用Easytabcontrol先新建一个工程,再新建一个主界面和三个子界面,在主界面上添加一个CANVAS控件,再右下角loadinstruments,找到CVI安装目录下的To
2、olslibcustctrl下的easytab.fp,再在工程下添加这个fp。首先介绍一下easytab.fp双击这个fp.可以看到这个fp内的函数,最重要的两个函数:1)EasyTab_ConvertFromCanvas(界面句柄,CANVAS的ID);2)EasyTab_LoadPanels(参数,参数,…..);EasyTab_ConvertFromCanvas函数简单,重点来说EasyTab_LoadPanels参数1:Panel来自下面这行代码if((panelHandle=LoadPanel(0,"Ea
3、syTabControlTest.uir",PANEL))<0)return-1;参数2:TabControl来自这行代码tabCtrl=EasyTab_ConvertFromCanvas(panelHandle,PANEL_CANVAS);参数3:Row该参数设置为1参数4:FileName指工程的.uir参数5:CallingModuleHandle一般设置为常量:__CVIUserHInst参数6:PanelIDsandHandlePointers该参数在要设置子界面的ID和句柄例如:三个界面EasyTab_L
4、oadPanels(panelHandle,tabCtrl,1,"EasyTabControlTest.uir",__CVIUserHInst,PANEL1,&panel1,PANEL2,&panel2,PANEL3,&panel3,0);运行后的界面:代码如下:#include#include"easytab.h"#include#include#include"EasyTabControlTest.h"staticintpanelHandle,ta
5、bCtrl,ActPan;intpanel1,panel2,panel3,panel4;intmain(intargc,char*argv[]){if(InitCVIRTE(0,argv,0)==0)return-1;/*outofmemory*/if((panelHandle=LoadPanel(0,"EasyTabControlTest.uir",PANEL))<0)return-1;tabCtrl=EasyTab_ConvertFromCanvas(panelHandle,PANEL_CANVAS);EasyT
6、ab_LoadPanels(panelHandle,tabCtrl,1,"EasyTabControlTest.uir",__CVIUserHInst,PANEL1,&panel1,PANEL2,&panel2,PANEL3,&panel3,0);EasyTab_SetAttribute(panelHandle,tabCtrl,ATTR_EASY_TAB_STRETCH_TO_FIT,0);//InstallPopup(panelHandle);DisplayPanel(panelHandle);RunUserInt
7、erface();DiscardPanel(panelHandle);return0;}//退出事件intCVICALLBACKQuitCallback(intpanel,intcontrol,intevent,void*callbackData,inteventData1,inteventData2){switch(event){caseEVENT_COMMIT:QuitUserInterface(0);break;}return0;}//切换TAB的事件intCVICALLBACKTabCtrlCallBack(
8、intpanel,intcontrol,intevent,void*callbackData,inteventData1,inteventData2){charActPanOut[100];switch(event){caseEVENT_TAB_CHANGED:EasyTab_GetAttribute(panelHandle,tabCtrl,A