13. WINCC -- C脚本实现弹窗调用(根据鼠标更改弹窗位置)

C脚本实现弹窗调用(根据鼠标更改弹窗位置)

cpp 复制代码
#include "apdefap.h"
void Click(char* lpszPictureName, char* lpszObjectName )
{
#define H 300  //弹窗高度(可以不用只需要在弹窗属性中选择调整大小即可)
#define W  250  //弹窗宽度(可以不用只需要在弹窗属性中选择调整大小即可)
#define WH 920  //弹窗所在窗口宽度
#define WW 1920 //弹窗所在窗口高度
#define TEXT "单输出电机2" //弹窗标题
#define TAGPREFIX "M2"  //弹窗变量前缀
#define PICTURENAME "@单输出电机.PDL"  //弹窗内容(需要设置好变量后缀)
#define WINDOW "PIC_WINDOW1" //弹窗名称,在当前窗口设置

SetPropBOOL(lpszPictureName,WINDOW,"Visible",0); //关闭上一个弹窗
SetPropChar(lpszPictureName,WINDOW,"CaptionText",TEXT);	//返回类型:BOOL 
SetPropChar(lpszPictureName,WINDOW,"tagprefix",TAGPREFIX);	//返回类型:BOOL 
SetPropChar(lpszPictureName,WINDOW,"PictureName",PICTURENAME);	//返回类型:BOOL 
//根据鼠标获取弹窗显示位置(不会超出当前窗口的大小)
SetWidth(lpszPictureName,WINDOW,W);
SetHeight(lpszPictureName,WINDOW,H);
 if    ((WW-W)<GetLeft(lpszPictureName,lpszObjectName))
       SetLeft(lpszPictureName,WINDOW,WW-W-50); 
else 
       SetLeft(lpszPictureName,WINDOW,GetLeft(lpszPictureName,lpszObjectName)+50); 
 if    ((WH-H)<GetTop(lpszPictureName,lpszObjectName))
       SetTop( lpszPictureName,WINDOW,WH-H-70);
else 
       SetTop( lpszPictureName,WINDOW,GetTop(lpszPictureName,lpszObjectName)+70);
SetPropBOOL(lpszPictureName,WINDOW,"Visible",1); //显示当前弹窗
}
相关推荐
学工科的皮皮志^_^20 小时前
电压源和电流源学习理解
单片机·嵌入式硬件·学习
Lxinccode20 小时前
python(48) : 命名截图[Windows工具(3)]
开发语言·python·截图·快速截图
骁的小小站20 小时前
Learn C the Hardway学习笔记和拓展知识(一)
c语言·开发语言·c++·经验分享·笔记·学习·bash
我命由我1234520 小时前
PDFBox - PDDocument 与 byte 数组、PDF 加密
java·服务器·前端·后端·学习·java-ee·pdf
花哥码天下20 小时前
Oracle下载JDK无需登录
java·开发语言
早点.早点.21 小时前
QT登陆界面
开发语言·qt
楼田莉子21 小时前
C++学习:异常及其处理
开发语言·c++·学习·visual studio
fsnine21 小时前
Python Web框架对比与模型部署
开发语言·前端·python
能不能别报错21 小时前
K8s学习笔记(二十) 亲和性、污点、容忍、驱逐
笔记·学习·kubernetes
kuniqiw21 小时前
远程处理器协议框架学习
学习