6.自定义对象
C动作
#include \
void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y) {
Valve(lpszPictureName,lpszObjectName); //Return-Type: void }
全局脚本\\项目函数
void Valve(char *lpszPictureName, char *lpszObjectName) {
char* Tagname = GetPropChar(lpszPictureName, lpszObjectName, \//设TAGNAME当前值为N3_HS_A char* TitleName = GetPropChar(lpszPictureName, lpszObjectName, \//设TITLENAME当前值为热风炉自动 char* Name = GetPropChar(lpszPictureName, lpszObjectName, \//设NAME当前值为QD_BUTTON
char* DIS = GetPropChar(lpszPictureName, lpszObjectName, \//设DIS是否显示,本变量空用于下面的阀函数 static BOOL visble; //声明BOOL量VISBLE
long lLeft ; //声明常整数1LEFT,用于弹出框的左上角 long lTop;
BOOL Bool=TRUE; //声明BOOL量BOO1为真
LINKINFO linkinfo; //Structure definition结构定义 visble=TRUE; //设VISBLE当前值为真 //lLeft =599; //lTop=327;
lLeft =GetLeft(lpszPictureName,lpszObjectName)+50; //1LEFT当前值为当前页面的当前对象的左坐标+50,注意不是VALUE的值而是当前对象按钮“热风炉自动”
lTop=GetTop(lpszPictureName,lpszObjectName); //1TOP当前值为当前页面的当前对象的上坐标 if (lLeft <20) //限制坐标范围 {
lLeft =20; }
if (lLeft >1240) {
lLeft =1240; }
if (lTop>200) {
lTop=200; }
if (lTop<20) {
lTop=20; }
SetLeft(lpszPictureName,\ //设定当前页面中画面窗口VALUE的左上角坐标 SetTop(lpszPictureName,\
SetPictureName(lpszPictureName,\//设定当前页面中画面窗口VALUE填充页面为.PDL
PDLRTSetPropEx(0,lpszPictureName,\ //设定 VALUE的一些属性,帮助里未查到,待查
SetPropChar(lpszPictureName,\ //设定VALUE的CAPTION TEXT为热风炉自动 SetPropChar(lpszPictureName,\ //为VALUE中所有变量增加前缀N3_HS_A SetPropChar(lpszPictureName,\ //为VALUE填充页面为QD_BUTTON
SetPropChar(Name,\;//为当前页面名字叫TEXT的TEXT属性设定为TAGNAME的当前值,本项目用于阀函数 SetPropChar(Name,\ //为当前页面名字叫BUTTON4的VISIBLE属性设定为DIS的当前值,本项目用于阀函数,下同
SetPropChar(Name,\SetPropChar(Name,\SetPropChar(Name,\}
画面窗口定义如下:
QD_BOTTON页面定义如下:
其中确定按钮定义如下:
动作按下置1,抬起置0
(完整word版)WINCC函数



