发布于 2008-06-23 22:06:36
0楼
首先非常感谢各位楼上高手的指点!!!
全局变量Var,类型BOOL,内部变量“B”,类型BOOL
我是在“全局脚本”的“项目函数”中新建了一个项目函数,代码如下:
BOOL Var;
void Global_C_Var_Function()
{
}
函数保存为GCVar.fct。也就是定义了一个全局变量Var
如果我用一个矩形对象的背景颜色连接内部变量B,要求全局变量Var变化时,矩形对象的背景颜色随之改变。那这个内部变量如何与全局变量链接呢?
我是在矩形对象背景颜色的“动态”中选择了“C动作”,代码如下:
#include "apdefap.h"
long _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
extern G_OperatorFlag;
SetTagBit("OperatorFlag",GetTagBit("G_OperatorFlag"));
#pragma option(mbcs)
if ((unsigned long)GetTagDouble ("OperatorFlag"))
return 255;
else
return 65535;
}
但当Var改变时,矩形对象的背景颜色并没有随之改变!
博雅所说的“将全局脚本的触发条件设成变量触发,变量就是var”,这里所说的触发条件是指矩形背景颜色的“C动作”中的触发条件还是定义全局脚本Var时的触发条件?另外如果将触发条件改为变量触发,当选择变量时并不能在wincc的“变量管理”中找到全局变量Var,而只能找到内部变量B。
有求必应,孤独求助!!!