2. 右键点击该控件,并选择“ Generate Custom Control Code ”
3. 指定对应的“*.c”文件,对应的函数代码将在指定的文件中创建.
如果只是用CP342-5连接上位机软件或 *** 作面板(OP),这时通讯采用的是S7协议,那么建议选择No DP模式,并且不需要调用FC1(DP_SEND)和FC2(DP_RECV)功能块,它们只是在PROFIBUS DP通讯时才使用;面板见图
程序如下:
#include <cvirte.h>
#include <userint.h>
#include "计算.h"
static int panelHandle
int i
double x,y,val
int main (int argc, char *argv[])
{
if (InitCVIRTE (0, argv, 0) == 0)
return -1 /* out of memory */
if ((panelHandle = LoadPanel (0, "计算.uir", PANEL)) < 0)
return -1
DisplayPanel (panelHandle)
RunUserInterface ()
DiscardPanel (panelHandle)
return 0
}
int CVICALLBACK Quit (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch (event)
{
case EVENT_COMMIT:
QuitUserInterface (0)
break
}
return 0
}
int CVICALLBACK Jisuan (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch (event)
{
case EVENT_COMMIT:
GetCtrlVal(panelHandle,PANEL_NUMERIC,&x)
GetCtrlVal(panelHandle,PANEL_NUMERIC_1,&y)
GetCtrlVal(panelHandle,PANEL_RINGSLIDE,&i)
switch(i)
{
case 0:
val=x+y
break
case 1:
val=x-y
break
case 2:
val=x*y
break
case 3:
if(y==0)
{
MessagePopup("Warning","被除数不能为“0”")
}
else
val=x/y
break
}
SetCtrlVal(panelHandle,PANEL_NUMERIC_2,val)
break
}
return 0
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)