wincc里怎样用一个按钮给一个公共画面传递结构体变量
通过点击一个按钮来激活一个公共窗口,这个公共窗口就是一个设备,里面的变量使用结构体变量,也就是给窗口传递结构体的变量。...
通过点击一个按钮来激活一个公共窗口,这个公共窗口就是一个设备,里面的变量使用结构体变量,也就是给窗口传递结构体的变量。
展开
4个回答
推荐于2017-09-11 · 知道合伙人数码行家
可以叫我表哥
知道合伙人数码行家
向TA提问 私信TA
知道合伙人数码行家
采纳数:25897
获赞数:1464977
2010年毕业于北京化工大学北方学院计算机科学与技术专业毕业,学士学位,工程电子技术行业4年从业经验。
向TA提问 私信TA
关注
展开全部
方法:
1。创建一个按钮,一个输入/输出域,建立一个二进制内部变量:ceshi。
2。对输入/输出域组态。在“对象属性”对话框的“属性”--》“输入/输出”中的输出值与变量ceshi想连接。(直接右击灯泡,选择变量,再选择ceshi)。
3。对按钮组态。在“对象属性”对话框的“事件”--》“鼠标”--》“按左键”处为该按钮组态一个C动作。输入以下代码:
#include "apdefap.h"
void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y)
{
SetTagWord("ceshi1",1);
}
4。再在“释放左键”处组态一个C动作,只需将上面代码中的“1”该为“0”即可。
5。运行WINCC测试,在输入/输出域中可以看见,每次按下按钮时,便给变量赋值“1”。完成。
1。创建一个按钮,一个输入/输出域,建立一个二进制内部变量:ceshi。
2。对输入/输出域组态。在“对象属性”对话框的“属性”--》“输入/输出”中的输出值与变量ceshi想连接。(直接右击灯泡,选择变量,再选择ceshi)。
3。对按钮组态。在“对象属性”对话框的“事件”--》“鼠标”--》“按左键”处为该按钮组态一个C动作。输入以下代码:
#include "apdefap.h"
void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y)
{
SetTagWord("ceshi1",1);
}
4。再在“释放左键”处组态一个C动作,只需将上面代码中的“1”该为“0”即可。
5。运行WINCC测试,在输入/输出域中可以看见,每次按下按钮时,便给变量赋值“1”。完成。
展开全部
1、定义结构变量类型,然后根据这个自定义类型来定义几个要用的结构变量,这个你应该懂的
比如pic1301.auto,pic1301.man,,,,pic1309.auto,pic1309.man
这是两个结构变量,每个结构变量包括了auto和man两个元素
2、定义一个弹出画面用的pdl文件,里面用到的变量要填成auto和man,不能带前缀
3、在主画面上定义若干个pictruewindow,里面装载的就是上面定义的pdl文件
注意画面属性的Prefix属性要填写不同的前缀,比如.pic1301或者.pic1309
4、在不同的按钮或者对象的click事件里面写脚本分别让这些pictruewindow显示出来就行了。
当然有些细节没法一一道来,建议你去买本或者下载《wincc6从入门到精通》
比如pic1301.auto,pic1301.man,,,,pic1309.auto,pic1309.man
这是两个结构变量,每个结构变量包括了auto和man两个元素
2、定义一个弹出画面用的pdl文件,里面用到的变量要填成auto和man,不能带前缀
3、在主画面上定义若干个pictruewindow,里面装载的就是上面定义的pdl文件
注意画面属性的Prefix属性要填写不同的前缀,比如.pic1301或者.pic1309
4、在不同的按钮或者对象的click事件里面写脚本分别让这些pictruewindow显示出来就行了。
当然有些细节没法一一道来,建议你去买本或者下载《wincc6从入门到精通》
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
将该按钮的名称改为你的结构变量的名称,假设你的公共窗口名称为YB,通过C动作实现你的要求
SetVisible(lpszPictureName,"YB",0);
SetTagPrefix(lpszPictureName,"YB", lpszObjectName); //Rückgabe-Typ :BOOL
SetVisible(lpszPictureName,"YB",1);
SetVisible(lpszPictureName,"YB",0);
SetTagPrefix(lpszPictureName,"YB", lpszObjectName); //Rückgabe-Typ :BOOL
SetVisible(lpszPictureName,"YB",1);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
同意楼上的,通过按钮动作改变变量为PDL前缀赋不同的值,是否可以再简单一些?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询