wincc 画面切换问题

我是刚学习wincc的,请高工们指点,我从网上下载的DEMOV6演示程序,在开始运行画面上的10切换画面的按钮,每个按钮调用不同的画面画面显示在同一个’应用窗口’里,应用窗口里的属性–显示–动态对话框,连接了一个模拟量的变量’pic_win_no’.    
 在按钮里的鼠标C动作如下:

按钮1;
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction DMTagName
#define Apc_pic_no "PA1.pic_no"
#define Apc_pic_win_no "pic_win_no"
#define Apc_pic_max "PA1.pic_no_max"
#define Apc_global_nav "global_nav"
// next TagID : 5
// WINCC:TAGNAME_SECTION_END

// WINCC:PICNAME_SECTION_START
// syntax: #define PicNameInAction PictureName
#define Apc_Navigation_top  "Navigation_top.pdl"
#define Apc_Navigation_bot  "Navigation_bot.pdl"
// next PicID : 3
// WINCC:PICNAME_SECTION_END

//extern global_nav;
extern global_PA1pic_no_max;
int g_nav;
//g_nav = GetTagWord("global_nav");

SetTagPrefix(lpszPictureName,"Nav_win_top","PA1."); //Rückgabe-Typ :BOOL 
SetPictureName(lpszPictureName,"Nav_win_top",Apc_Navigation_top);

SetTagPrefix(lpszPictureName,"Nav_win_bottom","PA1."); //Rückgabe-Typ :BOOL 
SetPictureName(lpszPictureName,"Nav_win_bottom",Apc_Navigation_bot);

//global_nav=1;
//SetTagWord("global_nav", g_nav);

SetTagMultiWait
("%d%d%d%d",
Apc_global_nav,1,
Apc_pic_no,0,
Apc_pic_win_no,1,
Apc_pic_max,global_PA1pic_no_max
);
}


按钮2:
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction DMTagName
#define Apc_pic_no "PA2.pic_no"
#define Apc_pic_win_no "pic_win_no"
#define Apc_pic_max "PA2.pic_no_max"
#define Apc_global_nav "global_nav"

// next TagID : 5
// WINCC:TAGNAME_SECTION_END

// WINCC:PICNAME_SECTION_START
// syntax: #define PicNameInAction PictureName
#define Apc_Navigation_top  "Navigation_top.pdl"
#define Apc_Navigation_bot  "Navigation_bot.pdl"
// next PicID : 3
// WINCC:PICNAME_SECTION_END

//extern global_nav;
extern global_PA2pic_no_max;
int global_nav;
//global_nav = GetTagWord("global_nav");

SetTagPrefix(lpszPictureName,"Nav_win_top","PA2."); //Rückgabe-Typ :BOOL 
SetPictureName(lpszPictureName,"Nav_win_top",Apc_Navigation_top);

SetTagPrefix(lpszPictureName,"Nav_win_bottom","PA2."); //Rückgabe-Typ :BOOL 
SetPictureName(lpszPictureName,"Nav_win_bottom",Apc_Navigation_bot);

//global_nav=2;
//SetTagWord("global_nav", global_nav);


SetTagMultiWait
("%d%d%d%d",
Apc_global_nav,2,
Apc_pic_no,0,
Apc_pic_win_no,2,

Apc_pic_max,global_PA2pic_no_max
);
}
请高工们给我讲解一下这两段C动作是如何利用"应用窗口"切换画面的,

问题补充:
是画面窗口

我是刚学习wincc的,请高工们指点,我从网上下载的DEMOV6演示程序,在开始运行画面上的10个切换画面的按钮,每个按钮调用不同的画面画面显示在同一个’画面窗口’里,画面窗口里的属性–显示–动态对话框,连接了一个模拟量的变量’pic_win_no’.

最佳答案

通过改变画面窗口的前缀变量来实现切换各种画面的。

提问者对于答案的评价:
谢谢

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc268378.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日
下一篇 2019年6月11日

相关推荐