微波EDA网,见证研发工程师的成长!
首页 > 测试测量 > 测试测量技术文库 > LabWindows/CVI虚拟仪器设计技术基本控件使用之: Tab 控件

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

时间:11-13 来源:3721RD 点击:

改变标签的显示风格,并且在标签上可以设置显示图标。在页面中,有两个Command Button 控件,拥有相同的常量值和回调函数名,在调用时,需要通过标题字符来区分所要响应的事件。面板设计如图1-11 所示,面板中主要控件属性设置如表1-11 所示。

图1-11 Tab 控件面板

表1-11 控件属性设置表

常量名

控件类型

控件的主要属性

PANEL

Panel

标题:Tab 控件

回调函数:PanelCB

标题:事件响应(__T)

常量名:TABPANEL

TAB

Tab

标题:标签设置(__S) 常量名:TABPANEL_2

标题:Tab 数目(__N) 常量名:TABPANEL_3

标题:显示风格(__K)

常量名:TABPANEL_4

NUMERICKNOB

Numeric Knob

标题:数值设置

NUMERICTHERM

Numeric Thermometer

标题:数值显示

STRING

String

标题:标签设置默认值:默认值(__D)

NUMERIC

Numeric

标题:Tab 数目

RING

Ring

标题:显示风格回调函数:style

标题:设置

回调函数:OkCallback

OKBUTTON

Command Button

标题:获取

回调函数:OkCallback

(2)程序源代码

//头文件声明

#include <formatio.h>

#include <cvirte.h>

#include <userint.h>

#include "Tab 控件.h"

//Tab 页面句柄声明

static int TabPanelHandle;

//Tab 页面索引声明

static int index = 0;

static int panelHandle; //主函数

int main (int argc, char *argv[])

{

if (InitCVIRTE (0, argv, 0) == 0)

return –1; /* out of memory */ if ((panelHandle = LoadPanel (0, "Tab 控件.uir", PANEL)) < 0)

return –1;

DisplayPanel (panelHandle);

RunUserInterface ();

DiscardPanel (panelHandle);

return 0;

} //面板回调函数

?int CVICALLBACK PanelCB (int panel, int event, void *callbackData,

int eventData1, int eventData2)

{

switch (event)

{

case EVENT_CLOSE:

QuitUserInterface (0);

break;

}

return 0;

}

//事件响应页面

int CVICALLBACK valset (int panel, int control, int event,

void *callbackData, int eventData1, int eventData2)

{

int temp;

switch (event)

{

case EVENT_COMMIT:

// 获得Tab 页面句柄

GetPanelHandleFromTabPage (panelHandle, PANEL_TAB, 0, &TabPanelHandle);

// 获得Tab 页面中控件值

GetCtrlVal (TabPanelHandle, TABPANEL_NUMERICKNOB, &temp);

// 设置Tab 页面中控件值

SetCtrlVal (TabPanelHandle, TABPANEL_NUMERICTHERM, temp);

break;

}

return 0;

}

//页面中的Command Button 按钮

int CVICALLBACK OkCallback (int panel, int control, int event,

void *callbackData, int eventData1, int eventData2)

{

int area;

char s[20];

char label[20];

int count;

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top