求助:WINCC脚本 点击:1080 | 回复:1



张adf

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:16帖 | 11回
  • 年度积分:0
  • 历史总积分:57
  • 注册:2007年3月18日
发表于:2007-11-19 11:05:00
楼主
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
BOOL value;
LINKINFO plink;

PDLRTGetPropEx(0,lpszPictureName,lpszObjectName,"Toggle",VT_BOOL,&value,NULL,NULL,0,NULL,NULL);
if(value) value =FALSE;
else value = TRUE;

PDLRTGetLink(0,lpszPictureName,lpszObjectName,"Toggle",&plink,NULL,NULL,NULL); //Rückgabe-Typ :BOOL 

if (plink.LinkType >2) return;
else SetTagBit (plink.szLinkName,(short int) value);
}
各位师傅能不能帮忙看看是什么意思 ,谢谢



yuanle

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 10208回
  • 年度积分:2747
  • 历史总积分:48332
  • 注册:2005年4月22日
发表于:2007-11-19 11:43:00
1楼
實質上這是庫中撥位開關的代碼,用戶無需了解其中實現的細節。
作用只需要在Value屬性上鏈接變量就可以了。
如果要解釋這些代碼,您可能需要了解Wincc中的函數功能,這對于用戶來說實在沒有很大的意義。
如果您仔細看過組態手冊,會發現您帖子中的一些代碼和組態手冊上的一些例子有很大的相似性哦。
如:if (plink.LinkType >2) return;
else SetTagBit (plink.szLinkName,(short int) value);
像不像組態手冊上對變量的置位取反?
您帖子中代碼的主要用途實現了2個功能:
1 完成了對您變量的取反。
2 完成了對畫面該按鈕控件的畫面替換,使用戶看起來按鈕在動作。

热门招聘
相关主题

官方公众号

智造工程师