在WINCC中如何实现按钮击一下为1再击一下为0

2024-11-23 04:16:35
推荐回答(2个)
回答(1):

假设你的二进制变量为motor1.on_off
按钮——属性——鼠标动作——C脚本:
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
SetTagBit("motor1.on_off",1-GetTagBit("motor1.on_off"));
}
编译没有错误,运行即可

回答(2):

楼上是对的,这条语句的功能是把“1-当前值”的结果赋值到当前值中

如果原来是1,按一下 新的 值为 1-1=0
如果原来是0,按一下 新的值为 1-0=1
实现了循环bool值的变换

改变值得变量你自己定义,需要改变什么 值 点编程界面中的上方黄色“变量选择”方框添加进来