签到有奖
消息提醒
运维工程师专区
官方商城
扫码分享好友 任选多种周边
求助:使用画面模板想点击按钮 弹出窗口在指定位置怎么做?
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1707227&b_id=5&s_id=0&num=5
WINCC弹窗不是需要先在主页面上设置窗口画面么,你设定好窗口画面位置,弹出的画面调用窗口画面不就可以了定位了?
不知道你说的是不是这个意思
msgbox脚本调出的脚本没办法设置位置,如果是用画面窗口调用的改位置就可以了。
如果要动态的改变弹出窗口的位置,可以使用脚本设置弹出窗口的Left属性和Top竖向,left相当于横向位置,top显示的纵向位置,可以通过鼠标左键事件获取鼠标的位置x,y,再加一定的偏移量就可以根据鼠标点击的位置动态的设定窗口的显示位置。
下面是一个弹出窗口的程序,Window1为弹出窗口
Sub OnLButtonDown(ByVal Item, ByVal Flags, ByVal x, ByVal y)
'*************弹出画面控制*********************
'先隐藏窗口
'为画面分配名称
'为窗口分配标题
'为窗口分配名称
'分配变量前缀
'计算窗口位置,如果窗口
'Dim Except_Obj1
'Dim Except_Obj2
'Set Except_Obj1 = HMIRuntime.Screens("Graphcs").Items("")
Dim Win
Set Win = ScreenItems("Window1")
Win.Visible = vbFalse
Win.PictureName = "Motor11"
Win.CaptionText = "1#送水泵"
Win.TagPrefix = ""
Win.Visible = vbTrue
Win.Left = x - Win.Width/2
Win.Top = y - Win.Height - 20
If Win.Left < 0 Then Win.Left =10
If Win.Top < 0 Then Win.Top = 10
If (Win.Left + Win.Width) > Win.Parent.Width Then Win.Left = Win.Parent.Width - Win.Width - 10
If (Win.Top + Win.Height) > Win.Parent.Height Then Win.Top = Win.Parent.Height - Win.Height - 10
End Sub
C脚本:
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
#pragma option(mbcs)
// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction "DMTagName"
// next TagID : 1
// WINCC:TAGNAME_SECTION_END
// WINCC:PICNAME_SECTION_START
// syntax: #define PicNameInAction "PictureName"
// next PicID : 1
// WINCC:PICNAME_SECTION_END
SetVisible(lpszPictureName,"EV1",FALSE);
SetTagPrefix(lpszPictureName,"EV1","UV202A_");
SetPropChar(lpszPictureName,"EV1","CaptionText","UV202A");
SetLeft(lpszPictureName,"EV1",410); //Return-Type: BOOL
SetTop(lpszPictureName,"EV1",0); //Return-Type: BOOL
SetVisible(lpszPictureName,"EV1",TRUE);
SetPropChar("Valve01","TEXT1","Text","烟气放散阀UV202A"); //Return-Type: BOOL
}
也可以给弹出窗口的Left和Top属性添加变量,通过设定变量值来改变弹出窗口位置。
分享
扫码分享好友 任选多种好礼
收藏
有帮助
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录