wincc普通C脚本

上传人:不*** 文档编号:116770452 上传时间:2019-11-17 格式:DOC 页数:15 大小:94.54KB
返回 下载 相关 举报
wincc普通C脚本_第1页
第1页 / 共15页
wincc普通C脚本_第2页
第2页 / 共15页
wincc普通C脚本_第3页
第3页 / 共15页
wincc普通C脚本_第4页
第4页 / 共15页
wincc普通C脚本_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《wincc普通C脚本》由会员分享,可在线阅读,更多相关《wincc普通C脚本(15页珍藏版)》请在金锄头文库上搜索。

1、.用户注销:#pragma code (useadmin.dll)#include PWRT_api.h#pragma code()PWRTLogout();2.用户登录:#pragma code (useadmin.dll)#include PWRT_api.h#pragma code()PWRTLogin(c);3.关闭项目并退出wincc:ExitWinCC ();4.退出运行到wincc资源管理器:DeactivateRTProject ();按钮变三种颜色#include apdefap.h long _main(char* lpszPictureName, char* lpszOb

2、jectName, char* lpszPropertyName)#pragma option(mbcs)if(GetTagWord(TX/ZSH001)=1)return 0x0000ff00;elseif(GetTagWord(TX/ZSL001)=1)return 0x000000ff;elsereturn 0x00c0c0c0;一个调用按钮变色#include apdefap.h long _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)#pragma option(mbcs)if(Ge

3、tTagWord(NewTag)=0)return 0x0000ff00;elsereturn 0x00ffffff;5.结束监控并关闭计算机(会弹出确认对话框)HWND hWnd = NULL;/Author:Smartsysint iRet;hWnd = FindWindow(NULL,WinCC-运行系统 - );iRet=MessageBox(hWnd,结束监控并关闭计算机,关闭操作站,MB_YESNO|MB_ICONWARNING|MB_APPLMODAL);if(iRet=IDYES)DMExitWinCCEx (DM_SDMODE_POWEROFF);6.点击事件弹出对话框,通过

4、点击弹出对话框的确定和取消按钮实现对变量的置位或取消:int r;r=MessageBox(NULL, YES为开,NO为关, 确定开命令:, MB_YESNO |MB_SYSTEMMODAL);if (r=IDYES)SetTagBit(TAGNAME,TRUE);elseSetTagBit(TAGNAME,FALSE);7.开显示关显示:(要在内部变量中建立三个二进制变量COLSE_DISPLAY、DISPLAY_NO和DISPLAY_COMMENT)/ Funktion: Bit in Doppelwort setzen;if (GetTagBitWait(COLSE_DISPLAY)=

5、1 )SetTagBit(COLSE_DISPLAY,0);SetTagBit(DISPLAY_NO,0); /Return-Type: BOOLSetTagBit(DISPLAY_COMMENT,0);elseSetTagBit(COLSE_DISPLAY,1);SetTagBit(DISPLAY_NO,1); /Return-Type: BOOLSetTagBit(DISPLAY_COMMENT,0);8.开阀确认:BOOL a;a=GetTagBit(30T制水启动); /Return-Type :short intif (a=0)if(MessageBox(NULL,真的要启动制水吗?

6、,操作提示,MB_YESNO|MB_ICONQUESTION|MB_SETFOREGROUND|MB_SYSTEMMODAL) = 6) SetTagBit(30T制水启动,1);/Return-Type :BOOLelseif(MessageBox(NULL,真的要停止制水吗?,操作提示,MB_YESNO|MB_ICONQUESTION|MB_SETFOREGROUND|MB_SYSTEMMODAL) = 6) SetTagBit(30T制水停止,1);9.将WinCC运行画面最小化HWND WinCCHwnd;WinCCHwnd=FindWindow(NULL,WinCC-Runtime

7、- ); /如果运行语言为英文if (WinCCHwnd=0) WinCCHwnd=FindWindow(NULL,WinCC-运行系统 - ); /如果运行语言为中文CloseWindow(WinCCHwnd);10.显示或不显示(其中hiddVtext为内部的二进制变量)if(GetTagBit(hiddVtext)=0) /Return-Type: BOOLSetTagBit(hiddVtext,TRUE); /Return-Type: BOOL/Return-Type: BOOLelseSetTagBit(hiddVtext,FALSE);10.打开编辑画面的脚本#pragma opt

8、ion(mbcs)#ifdef RUN_ON_WEBNAVIGATOR#elseHWND hExplorerWindow= NULL;HWND hRuntimeWindow= NULL;hExplorerWindow= FindWindow(WinCCExplorerFrameWndClass,NULL);hRuntimeWindow= FindWindow(PDLRTisAliveAndWaitsForYou,NULL);if(hExplorerWindow)ShowWindow(hExplorerWindow, SW_MINIMIZE); / This entry is only nece

9、ssary for Windows 2000ShowWindow(hExplorerWindow, SW_SHOWNORMAL);SetForegroundWindow(hExplorerWindow);elseprintf(rn SetForeground failed);#endif11.如何在WINCC中制作一个保持型按钮方法1:if( GetTagBit(M10) )SetTagBit(M10,0);elseSetTagBit(M10,1);方法2:SetTagBit(M1.0,(SHORT)!GetTagBit(M1.0);求反指令,如果为1点击变为0,如果为0点击变为1方法3:或者

10、做两个按钮,按钮一:显示,直接连接m1.0,是-不显示,否-显示 。事件,直接连接,源,常数1,变量M1.0;按钮二:事件,直接连接,源,常数0,变量M1.0;用按钮一覆盖按钮二12变量每秒加1DWORD a;a=GetTagDWord(Tank);a+=1;if(a100) (a=0);SetTagDWord(Tank,a);return 0; WINCC动画脚本电机风扇旋转(几何-起始角度):#include apdefap.hlong _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)sta

11、tic DWORD f=20;if (GetTagBit(DI电机运行信号) f= f+30;if (f=360) (f=0);return f;电机风扇旋转(几何-结束角度):#include apdefap.hlong _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)static DWORD i=80;if (GetTagBit(DI电机运行信号) i = i+30;if (i=360) (i=0);return i; *物料水平右移动(几何-位置X)(停车后,物料回到原点)*#includ

12、e apdefap.hlong _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)static int a=350;if (GetTagBit(DI电机运行信号) & (a=720) (a=350); if (!GetTagBit(DI电机运行信号) (a=350); return a;物料水平右移动(几何-位置X)(停车后,物料停在该点)#include apdefap.hlong _main(char* lpszPictureName, char* lpszObjectName, char*

13、lpszPropertyName)static int a=350;if (GetTagBit(DI电机运行信号) & (a=720) (a=350); return a;物料向上移动(几何-位置Y)(停车后,物料停在该点)#include apdefap.hlong _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)static int b=450;if (GetTagBit(DI电机运行信号) & (b=290) b-=10;if (btm_year-100+2000,ptm-tm_mon+1,ptm-tm_mday);return(p);时分秒(静态文本)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号