有句脚本不明白,请教各位?

int left;
 int top;
 BOOL Bool=TRUE;
 left=GetLeft(lpszPictureName,lpszObjectName);
 top=GetTop(lpszPictureName,lpszObjectName);
  SetLeft(lpszPictureName,"valve",550);
       SetTop(lpszPictureName,"valve",80); 
       SetPictureName(lpszPictureName,"valve","CTD-V1.PDL");
 PDLRTSetPropEx(0,lpszPictureName,"valve","Visible",VT_BOOL,&Bool,NULL,NULL,0,NULL,NULL);
 这是弹出窗口的C脚本,不明白最后一句是什么意思?PDLRTSetPropEx(0,lpszPictureName,"valve","Visible",VT_BOOL,&Bool,NULL,NULL,0,NULL,NULL);
 

问题补充:
我自己试了一下,不写最后一句也是可以运行的。我想知道哪里有关于这些ODK函数的资料,怎么去使用它。谢谢!
 对了,还有一个问题,就是鼠标动作,是不是点击左键和右键都可以,但是为什么我只有在点击左键的时候才动作了,右键不管用了?

最佳答案

PDLRTSetPropEx之前的代码你已经知道了,就是设置弹出窗口valve的偏移位置和画面名称。设置完了以后就需要将它显示出来,PDLRTSetPropEx就是用来干这个的。
   PDLRTSetPropEx是ODK里面的函数,用于在线给画面的控件属性设置值。其实跟SetPropBOOL(lpszPictureName,,"valve","Visible",TRUE);执行效果是一样的。
   
  补充1:不写最后一句能运行可能是因为画面窗口已经显示了。
  补充2:ODK有一个软件包,内含说明文件,还有一些示例。WinCC ODK其实是WinCC的API函数,主要给第三方软件(C/C++)提供访问WinCC的接口。而WinCC用自带的标准函数及内部函数就已经够用了。
  补充3:如果想左右键都起作用,可以将代码放到“鼠标动作”中,而不是“按左键”或”按右键“。

 补充4:关于“鼠标动作”我后来试了一下,的确只有左键才起作用,抱歉啊。
 

提问者对于答案的评价:
谢谢两位的热心回答,我也从网上下载到了ODK函数的手册了,谢谢!

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc277180.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日
下一篇 2019年6月11日

相关推荐

  • 急急急!

    有一套系统是s7-400冗余系统,CPU是414h,有两台上位机进行同步操作,其中一台上位机的硬盘出现故障,更换后出现问题:项目中的一个从站菜单无法操作了(从站是s7-200系统,…

    SIMATIC WinCC 2019年6月11日
  • wincc项目74SP1功能

    各位好 谁可以给我一个wincc7.4sp1的 项目实例 带操作员消息那种 比如操作员更改数值被记录这种,不要官网的连接 我下载提…

    SIMATIC WinCC 2021年7月5日
  • wincc新手问题

    请问如何实现随着变量的改变而改变图形填充量的高低,和颜色的变化,如变量的量程的为0~2000,当为0时没有填充或颜色不变,当为500时填充量为1/4,颜色变化,当为2000时填充量…

    SIMATIC WinCC 2019年6月11日
  • VBS问题提问

    我在WinCC V6.0 SP3 ASIA中,组太了一个按钮,一个输入/输出域。对按钮写VBS代码,实现将输入/输出域中的数值写入Excel表格中。&…

    SIMATIC WinCC 2019年6月11日
  • wincc7.4中控件属性如何显示三种不同颜色

    winCC控件属性中如何显示三种颜色,开到位显示红色,关到位显示绿色 ,开不到位和关不到位及开到位和关到位时显示黄色?怎么实现 钻石用户推荐最佳答案 看附件,楼上说的都是…

    2020年11月1日
  • SetTagValue的使用方法

    我想使用SetTagValue函数避免变量前缀,怎样把获取鼠标的位置参数串传递出来:POINT myPoint;GetCursorPos(&myPoint);p…

    SIMATIC WinCC 2020年11月1日
  • WinCC支持MODBUS协议通讯吗?

    WinCC支持MODBUS协议通讯吗?怎样设置啊 最佳答案 你应该用PLC通过Modbus协议读写主(从)站数据,将读写的数据放到DB块里,再通过WinCC读写DB就可以了! 提问…

    SIMATIC WinCC 2019年6月11日
  • OPC变量显示为0,通讯状态已连接,实际变量不为0。

    各位大侠,本人最近组态一台客户机电脑WINCC项目,通过OPC协议读取服务器变量,该服务器设置正常,并有几台客户机通过OPC读取也正常,重新增加一台电脑出现变量显示已连接,但只能读…

    2017年11月16日
  • wincc与多个plc连接问题

    现有多个plc要与一台电脑的wincc通过以太网连接,wincc中建立多个tcp/ip地址,wincc中只做一个画面,怎么样通过变量调用不同的连接地址 问题补充:每个链接中有多个变…

    SIMATIC WinCC 2017年7月26日
  • 求高手指点这个vc脚本错误

    我写个个脚本500ms循环,tag_0中存的是32位变量名称,tag_1中存是第几位,如果这位为1就变绿色,但我在调试时脚本诊断中常出现1007006错误代码,我搞不定,求帮忙&n…

    SIMATIC WinCC 2020年11月1日