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); //显示当前弹窗
}