wincc中全局脚本中获得某个画面的某个对象的属性?

请问在wincc中全局脚本中怎么获得某个画面的某个对象的属性?
 画面中有个文字对象想做动态的滚动。按钮脚本如下,已经测试可以了,想在全局脚本中,周期性的触发。
 #include "apdefap.h"
 void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
 {
 #define ZeroPos 1680  //屏幕宽
 #define Length 800
 #define Step 5

 int pos  = 0;

 pos = GetLeft(lpszPictureName,"text1");

 if ( pos < ZeroPos )
   {
   pos+=Step;
   SetLeft(lpszPictureName,"text1",pos);
   }

 if ( pos > ZeroPos )
 {
 pos=0;
 SetLeft(lpszPictureName,"text1",pos-200);//200是文本的宽度
 }
 }
 望专家指点。
 还有wincc中声音报警的的脚本谁能提供一下,声音是我另外的某个文件。

最佳答案

1.在全局脚本中,只要将lpszPictureName改为对应的画面名称即可。,比如:SetLeft("Roller.PDL","text1",pos);

  2.声音报警脚本:
  #pragma code("Winmm.dll")
  VOID WINAPI PlaySoundA(char* pszSound,char* hmode,DWORD dwFlag);
  #pragma code( )

  PlaySoundA("D:\\MySound.wav",NULL,1);

  PlaySoundA的详情请见:
  http://baike.baidu.com/view/1014003.htm

 To楼下:加到C脚本的最开始处。

提问者对于答案的评价:
很好,每次都是准确的回答我的问题。谢谢!

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

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

相关推荐