Ring下拉菜单放在TAB中出问题了
把Ring下拉菜单放在TAB上以后,使用GetCtrlVal函数取Ring选项值(*.h文件上的#define自动更改了),当程序执行到GetCtrlVal时报错,GetCtrlVal返回的是负数.未放到TAB之前是没问题的.不知道是什么原因...*.h文件不知道有没有问题,把Ring加到TAB以后的*.h文件如下:
/* Panels and Controls: */
#definePANEL2 1 /* callback function: CVI_Config_CMD */
#definePANEL2_DECORATION 2
#definePANEL2_COMMANDBUTTON 3 /* callback function: CVI_OK_CND */
#definePANEL2_COMMANDBUTTON_2 4 /* callback function: CVI_Quit_CMD */
#definePANEL2_RINGbaudRate 5
#definePANEL2_TAB 6
#defineTABPANEL_RINGCOMPort 2
#defineTABPANEL_NUMdevDCPower 3
#defineTABPANEL_NUMdevDigitalOSC 4
#defineTABPANEL_NUMdevElecLoad 5
调用函数如下:
int COMPort;
GetCtrlVal(panel,TABPANEL_RINGCOMPort,&COMPort);
上面函数报错.
但下面这个函数是可以的
int BaudRate;
GetCtrlVal(panel,PANEL2_RINGbaudRate ,&BaudRate);
不知道是什么原因,指教... 放在tab之后,第一个参数就不能用panel了,tab属于子panel,需要先得到tab的某个panel的handle,可以参考下面这个
GetPanelHandleFromTabPage (mainPanel, MAIN_PANEL_MAIN_TAB, 2, &tabpanel1);
查一下GetPanelHandleFromTabPage就可以了。:)
Thankyou to sunshuai03
使用了GetPanelHandleFromTabPage 函数以后,可以正确读取/设置ring的值,谢谢sunshuai03的帮助...
页:
[1]