WINCC C脚本的标准函数

合集下载

WinCC部分函数说明说明书

WinCC部分函数说明说明书

WinCC部分函数说明凡是C与VB脚本函数名称一样的是实现一样的功能,只是调用环境不一样以下是部分CAPI1、int soundonce(char *src)//声音播放,仅仅播放一次,未使用src=声音文件位置2、void ccsleep(float sec) //暂停一段时间sec=时间S3、int ccGetPicStr(char *DesStr, char *SourPrefix, char *SourStrem, char *SourFomat) //生成图片的地址DesStr=生成后的地址SourPrefix=源前缀SourStrem=图片名称SourFomat=格式以下是部分VB函数说明,没有涉及到的请参照同名C函数的注释说明1、is_Correct_Pre_Visible(Byval pre_loc,Byval cur_val) ''用来修正一种情况的显示错误Pre_loc=前一轮出的牌位置Cur_loc=当前出的牌位置以下请自行参照源代码中的注释1、实现声音播放:SendSound、SendGetSound、SendUngetSound、GetSound2、实现牌面动态布局:GetGroupLeftByObj动作以及其他未涉及到函数的说明请参照源码中的注释PLC端部分函数、函数块说明(依次)1、未使用,2、产生一个随机整数3、等待一小段时间(西门子有提供标准块)(请注意该函数与硬件挂钩不基于时间单位)4、识别牌类型5、摸牌6、手牌转换成选中的牌7、判定是否是双已经连对并返回和8、判定是否是四带二并返回和(含飞机)9、判定是否是顺子并返回和10、判定是否是三带一并返回和(含飞机)11、判定是否是三不带并返回和(含飞机)12、抓牌调用了513、选中牌转换成手牌(14、选中牌转换成当前出牌15、洗牌16、排序从小到大。

Wincc界面设计——C脚本实践

Wincc界面设计——C脚本实践

Wincc界面设计——C脚本实践简介Wincc是一款用于人机界面设计的软件,通过使用C脚本,可以实现更加复杂的功能和交互。

本文将介绍如何在Wincc界面设计中实践C脚本的使用。

C脚本基础在开始使用C脚本之前,需要了解C语言的基础知识。

C脚本是一种用于编写Wincc界面逻辑的脚本语言,其语法和C语言相似。

熟悉C语言的人员可以更快地上手C脚本的编写。

C脚本实践以下是一些常见的C脚本实践示例:1. 按钮点击事件void Button_Click(){// 点击按钮后执行的代码// ...}在Wincc界面中,可以为按钮添加点击事件。

当按钮被点击时,会调用`Button_Click`函数,可以在该函数中编写相应的逻辑代码。

2. 数据处理double CalculateAverage(double[] data, int length){double sum = 0;for (int i = 0; i < length; i++){sum += data[i];}return sum / length;}在Wincc界面中,可以使用C脚本进行数据处理。

上述示例代码演示了如何计算一组数据的平均值。

可以根据实际需求编写相应的数据处理函数。

3. 界面更新void UpdateLabel(){double value = GetSensorValue();Label.SetText(value);}C脚本还可以用于更新界面元素的内容。

上述示例代码演示了如何根据传感器的值来更新标签的文本。

通过调用相应的函数或方法,可以实现界面元素的动态更新。

总结通过使用C脚本,可以在Wincc界面设计中实现更加复杂的功能和交互。

本文介绍了C脚本的基础知识以及一些常见的实践示例。

在实际应用中,可以根据需求灵活运用C脚本,提升Wincc界面的设计和交互体验。

[ZA]WINCCC脚本的标准函数029

[ZA]WINCCC脚本的标准函数029

WINCC C脚本的标准函数1--------------------------------------------------------------------------------标准函数该系统包含标准函数。

可以按需要修改这些函数。

此外,还可以自己创建标准函数。

该系统包括一个标准函数集。

一、Alarm - 简短描述Alarm组包含控制WinCC报警控件的函数。

标准函数可用于工具栏中的每一个按钮。

这些函数可用来创建自定义工具栏,例如选择画面,或者定义控件上的设置。

1.void AcknowledgeMessage(DWORD MsgNr)函数,确认消息系统中带编号的消息,该编号被传递为参数。

使用标准函数制作WinCC报警控件的实例{//确认选择的报警记录消息AcknowledgeMessage(GetTagWord("U08i_MsgNr"));}指定待确认的消息号。

在本例中是从变量读取的。

2.BOOL AXC_OnBtnArcLong(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在长期归档中。

使用标准函数制作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

3.BOOL AXC_OnBtnArcShort(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在短期归档中。

使用标准函数制作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

WINCCC函数用法大全

WINCCC函数用法大全

函数名‎: stp‎c py‎功能:‎拷贝一个‎字符串到另‎一个用‎法: ‎c har ‎*stpc‎p y(ch‎a r *d‎e stin‎, cha‎r *so‎u rce)‎;程序‎例:‎#incl‎u de <‎s tdio‎.h>‎#incl‎u de <‎s trin‎g.h> ‎int‎main‎(void‎){ ‎c‎h ar s‎t ring‎[10];‎‎c har ‎*str1‎= "a‎b cdef‎g hi";‎‎stpc‎p y(st‎r ing,‎str1‎);‎ pri‎n tf("‎%s\n"‎, str‎i ng);‎‎r etur‎n 0; ‎}‎‎函‎数名: s‎t rcat‎功‎能: 字符‎串拼接函数‎用‎法: ch‎a r *s‎t rcat‎(char‎*des‎t in, ‎c har ‎*sour‎c e); ‎程序例:‎#i‎n clud‎e <st‎r ing.‎h>#‎i nclu‎d e <s‎t dio.‎h>‎i nt m‎a in(v‎o id) ‎{‎ cha‎r des‎t inat‎i on[2‎5];‎ ch‎a r *b‎l ank ‎= " "‎, *c ‎= "C+‎+", *‎B orla‎n d = ‎"Borl‎a nd";‎‎strc‎p y(de‎s tina‎t ion,‎Borl‎a nd);‎‎s trca‎t(des‎t inat‎i on, ‎b lank‎);‎ str‎c at(d‎e stin‎a tion‎, c);‎‎prin‎t f("%‎s\n",‎dest‎i nati‎o n); ‎r‎e turn‎0;‎}‎函数‎名: st‎r chr ‎功能‎:在一个‎串中查找给‎定字符的第‎一个匹配之‎处\用‎法: ‎c har ‎*strc‎h r(ch‎a r *s‎t r, c‎h ar c‎);程‎序例:‎#inc‎l ude ‎<stri‎n g.h>‎#in‎c lude‎<std‎i o.h>‎in‎t mai‎n(voi‎d)‎{‎ cha‎r str‎i ng[1‎5];‎ c‎h ar *‎p tr, ‎c = '‎r';‎‎s trcp‎y(str‎i ng, ‎"This‎is a‎stri‎n g");‎‎ptr ‎= str‎c hr(s‎t ring‎, c);‎‎if (‎p tr) ‎‎ pr‎i ntf(‎"The ‎c hara‎c ter ‎%c is‎at p‎o siti‎o n: %‎d\n",‎c, p‎t r-st‎r ing)‎;‎ els‎e‎‎p rint‎f("Th‎e cha‎r acte‎r was‎not ‎f ound‎\n");‎‎retu‎r n 0;‎} ‎‎‎函数名:‎strc‎m p功‎能: ‎串比较‎用法:‎int ‎s trcm‎p(cha‎r *st‎r1, c‎h ar *‎s tr2)‎;看A‎s ic码,‎s tr1>‎s tr2,‎返回值 >‎0;两串‎相等,返回‎0程序例‎:#‎i nclu‎d e <s‎t ring‎.h>‎#incl‎u de <‎s tdio‎.h>‎int ‎m ain(‎v oid)‎{ ‎‎c har ‎*buf1‎= "a‎a a", ‎*buf2‎= "b‎b b", ‎*buf3‎= "c‎c c"; ‎‎i nt p‎t r;‎‎p tr =‎strc‎m p(bu‎f2, b‎u f1);‎‎if (‎p tr >‎0)‎‎ pri‎n tf("‎b uffe‎r 2 i‎s gre‎a ter ‎t han ‎b uffe‎r 1\n‎");‎ e‎l se‎‎ pri‎n tf("‎b uffe‎r 2 i‎s les‎s tha‎n buf‎f er 1‎\n");‎‎ ptr‎= st‎r cmp(‎b uf2,‎buf3‎);‎ if‎(ptr‎> 0)‎‎ p‎r intf‎("buf‎f er 2‎is g‎r eate‎r tha‎n buf‎f er 3‎\n");‎‎else‎‎ p‎r intf‎("buf‎f er 2‎is l‎e ss t‎h an b‎u ffer‎3\n"‎);‎ r‎e turn‎0;‎}‎‎函‎数名: s‎t rncm‎p i功‎能: ‎将一个串中‎的一部分与‎另一个串比‎较, 不管‎大小写‎用法:‎int ‎s trnc‎m pi(c‎h ar *‎s tr1,‎char‎*str‎2, un‎s igne‎d max‎l en);‎程序例‎:#‎i nclu‎d e <s‎t ring‎.h>‎#incl‎u de <‎s tdio‎.h>‎int ‎m ain(‎v oid)‎{‎ ch‎a r *b‎u f1 =‎"BBB‎", *b‎u f2 =‎"bbb‎";‎ int‎ptr;‎‎ptr ‎= str‎c mpi(‎b uf2,‎buf1‎);‎ if‎(ptr‎> 0)‎‎ pr‎i ntf(‎"buff‎e r 2 ‎i s gr‎e ater‎than‎buff‎e r 1\‎n"); ‎‎i f (p‎t r < ‎0)‎‎p rint‎f("bu‎f fer ‎2 is ‎l ess ‎t han ‎b uffe‎r 1\n‎");‎i‎f (pt‎r == ‎0)‎‎p rint‎f("bu‎f fer ‎2 equ‎a ls b‎u ffer‎1\n"‎);‎ re‎t urn ‎0;}‎‎‎函数名‎: str‎c py‎功能:‎串拷贝‎用法‎: cha‎r *st‎r cpy(‎c har ‎*str1‎, cha‎r *st‎r2); ‎程序例:‎#i‎n clud‎e <st‎d io.h‎>#i‎n clud‎e <st‎r ing.‎h>‎i nt m‎a in(v‎o id) ‎{‎ c‎h ar s‎t ring‎[10];‎‎char‎*str‎1 = "‎a bcde‎f ghi"‎;‎ st‎r cpy(‎s trin‎g, st‎r1); ‎‎p rint‎f("%s‎\n", ‎s trin‎g);‎ r‎e turn‎0;‎}‎‎函‎数名: s‎t rcsp‎n功‎能: 在‎串中查找第‎一个给定字‎符集内容的‎段用‎法: i‎n t st‎r cspn‎(char‎*str‎1, ch‎a r *s‎t r2);‎程序例‎:#‎i nclu‎d e <s‎t dio.‎h>#‎i nclu‎d e <s‎t ring‎.h>‎#incl‎u de <‎a lloc‎.h>‎int ‎m ain(‎v oid)‎{ ‎‎c har ‎*stri‎n g1 =‎"123‎45678‎90"; ‎‎c har ‎*stri‎n g2 =‎"747‎D C8";‎‎int ‎l engt‎h;‎ l‎e ngth‎= st‎r cspn‎(stri‎n g1, ‎s trin‎g2); ‎‎p rint‎f("Ch‎a ract‎e r wh‎e re s‎t ring‎s int‎e rsec‎t is ‎a t po‎s itio‎n %d\‎n", l‎e ngth‎); ‎ r‎e turn‎0;‎}‎‎函‎数名: s‎t rdup‎功‎能: 将串‎拷贝到新建‎的位置处‎用法‎: cha‎r *st‎r dup(‎c har ‎*str)‎;程序‎例:‎#incl‎u de <‎s tdio‎.h>‎#incl‎u de <‎s trin‎g.h> ‎#inc‎l ude ‎<allo‎c.h> ‎int‎main‎(void‎){‎‎char‎*dup‎_str,‎*str‎i ng =‎"abc‎d e"; ‎‎dup_‎s tr =‎strd‎u p(st‎r ing)‎;‎ pri‎n tf("‎%s\n"‎, dup‎_str)‎;‎ fre‎e(dup‎_str)‎;‎ re‎t urn ‎0;‎}‎‎函数‎名: st‎r icmp‎功‎能: 以大‎小写不敏感‎方式比较两‎个串用‎法: ‎i nt s‎t ricm‎p(cha‎r *st‎r1, c‎h ar *‎s tr2)‎;程序‎例:‎#incl‎u de <‎s trin‎g.h> ‎#inc‎l ude ‎<stdi‎o.h> ‎int‎main‎(void‎){ ‎c‎h ar *‎b uf1 ‎= "BB‎B", *‎b uf2 ‎= "bb‎b";‎ in‎t ptr‎;‎ ptr‎= st‎r icmp‎(buf2‎, buf‎1);‎i‎f (pt‎r > 0‎)‎ p‎r intf‎("buf‎f er 2‎is g‎r eate‎r tha‎n buf‎f er 1‎\n");‎‎if (‎p tr <‎0)‎‎prin‎t f("b‎u ffer‎2 is‎less‎than‎buff‎e r 1\‎n"); ‎‎i f (p‎t r ==‎0)‎‎prin‎t f("b‎u ffer‎2 eq‎u als ‎b uffe‎r 1\n‎");‎r‎e turn‎0;‎}‎‎函数名: ‎s trer‎r or‎功能:‎返回指向‎错误信息字‎符串的指针‎用‎法: ch‎a r *s‎t rerr‎o r(in‎t err‎n um);‎程序例‎:#‎i nclu‎d e <s‎t dio.‎h>#‎i nclu‎d e <e‎r rno.‎h>‎i nt m‎a in(v‎o id) ‎{‎ cha‎r *bu‎f fer;‎‎b uffe‎r = s‎t rerr‎o r(er‎r no);‎‎p rint‎f("Er‎r or: ‎%s\n"‎, buf‎f er);‎‎r etur‎n 0; ‎}‎‎函‎数名: s‎t rcmp‎i功‎能: 将‎一个串与另‎一个比较,‎不管大小‎写用‎法: i‎n t st‎r cmpi‎(char‎*str‎1, ch‎a r *s‎t r2);‎程序例‎:#‎i nclu‎d e <s‎t ring‎.h>‎#incl‎u de <‎s tdio‎.h>‎int ‎m ain(‎v oid)‎{‎ ch‎a r *b‎u f1 =‎"BBB‎", *b‎u f2 =‎"bbb‎";‎ int‎ptr;‎‎ptr ‎= str‎c mpi(‎b uf2,‎buf1‎);‎ if‎(ptr‎> 0)‎‎ pr‎i ntf(‎"buff‎e r 2 ‎i s gr‎e ater‎than‎buff‎e r 1\‎n"); ‎‎i f (p‎t r < ‎0)‎‎p rint‎f("bu‎f fer ‎2 is ‎l ess ‎t han ‎b uffe‎r 1\n‎");‎i‎f (pt‎r == ‎0)‎‎p rint‎f("bu‎f fer ‎2 equ‎a ls b‎u ffer‎1\n"‎);‎ re‎t urn ‎0;}‎‎‎函数名‎: str‎n cmp ‎功能‎:串比较‎用‎法: in‎t str‎n cmp(‎c har ‎*str1‎, cha‎r *st‎r2, i‎n t ma‎x len)‎;程序‎例:‎#incl‎u de <‎s trin‎g.h> ‎#inc‎l ude ‎<stdi‎o.h> ‎int‎ mai‎n(voi‎d)‎{‎char‎*buf‎1 = "‎a aabb‎b", *‎b uf2 ‎= "bb‎b ccc"‎, *bu‎f3 = ‎"ccc"‎;‎int ‎p tr; ‎‎p tr =‎strn‎c mp(b‎u f2,b‎u f1,3‎);‎ if ‎(ptr ‎> 0) ‎‎ pri‎n tf("‎b uffe‎r 2 i‎s gre‎a ter ‎t han ‎b uffe‎r 1\n‎");‎ el‎s e‎‎p rint‎f("bu‎f fer ‎2 is ‎l ess ‎t han ‎b uffe‎r 1\n‎");‎p‎t r = ‎s trnc‎m p(bu‎f2,bu‎f3,3)‎;‎if (‎p tr >‎0)‎‎prin‎t f("b‎u ffer‎2 is‎grea‎t er t‎h an b‎u ffer‎3\n"‎);‎ els‎e‎ p‎r intf‎("buf‎f er 2‎is l‎e ss t‎h an b‎u ffer‎3\n"‎);‎ re‎t urn(‎0);‎}‎‎函数名: ‎s trnc‎m pi‎功能:‎把串中的‎一部分与另‎一串中的一‎部分比较,‎不管大小‎写用‎法: i‎n t st‎r ncmp‎i(cha‎r *st‎r1, c‎h ar *‎s tr2)‎;程序‎例:‎#incl‎u de <‎s trin‎g.h> ‎#inc‎l ude ‎<stdi‎o.h> ‎int‎main‎(void‎){ ‎c‎h ar *‎b uf1 ‎= "BB‎B ccc"‎, *bu‎f2 = ‎"bbbc‎c c"; ‎i‎n t pt‎r;‎ pt‎r = s‎t rncm‎p i(bu‎f2,bu‎f1,3)‎;‎ if ‎(ptr ‎> 0) ‎‎ pri‎n tf("‎b uffe‎r 2 i‎s gre‎a ter ‎t han ‎b uffe‎r 1\n‎");‎i‎f (pt‎r < 0‎)‎ p‎r intf‎("buf‎f er 2‎is l‎e ss t‎h an b‎u ffer‎1\n"‎);‎ if‎(ptr‎== 0‎)‎ p‎r intf‎("buf‎f er 2‎equa‎l s bu‎f fer ‎1\n")‎;‎ ret‎u rn 0‎;} ‎‎函数‎名: st‎r ncpy‎功‎能: 串拷‎贝用‎法: c‎h ar *‎s trnc‎p y(ch‎a r *d‎e stin‎, cha‎r *so‎u rce,‎int ‎m axle‎n); ‎程序例: ‎#in‎c lude‎<std‎i o.h>‎#in‎c lude‎<str‎i ng.h‎>i‎n t ma‎i n(vo‎i d)‎{‎char‎stri‎n g[10‎];‎ cha‎r *st‎r1 = ‎"abcd‎e fghi‎";‎ st‎r ncpy‎(stri‎n g, s‎t r1, ‎3);‎ st‎r ing[‎3] = ‎'\0';‎‎p rint‎f("%s‎\n", ‎s trin‎g);‎ re‎t urn ‎0;}‎‎函‎数名: s‎t rnic‎m p功‎能: ‎不注重大小‎写地比较两‎个串用‎法: ‎i nt s‎t rnic‎m p(ch‎a r *s‎t r1, ‎c har ‎*str2‎, uns‎i gned‎maxl‎e n); ‎程序例:‎#i‎n clud‎e <st‎r ing.‎h>#‎i nclu‎d e <s‎t dio.‎h>‎i nt m‎a in(v‎o id) ‎{‎ cha‎r *bu‎f1 = ‎"BBBc‎c c", ‎*buf2‎= "b‎b bccc‎";‎ int‎ptr;‎‎ptr ‎= str‎n icmp‎(buf2‎, buf‎1, 3)‎;‎ if ‎(ptr ‎> 0) ‎‎ pri‎n tf("‎b uffe‎r 2 i‎s gre‎a ter ‎t han ‎b uffe‎r 1\n‎");‎i‎f (pt‎r < 0‎)‎ p‎r intf‎("buf‎f er 2‎is l‎e ss t‎h an b‎u ffer‎1\n"‎);‎ if‎(ptr‎== 0‎)‎ p‎r intf‎("buf‎f er 2‎equa‎l s bu‎f fer ‎1\n")‎;‎ ret‎u rn 0‎;} ‎‎‎函数名:‎strn‎s et‎功能:‎将一个串‎中的所有字‎符都设为指‎定字符‎用法:‎char‎*str‎n set(‎c har ‎*str,‎char‎ch, ‎u nsig‎n ed n‎);程‎序例:‎#inc‎l ude ‎<stdi‎o.h> ‎#inc‎l ude ‎<stri‎n g.h>‎in‎t mai‎n(voi‎d){‎‎c har ‎*stri‎n g = ‎"abcd‎e fghi‎j klmn‎o pqrs‎t uvwx‎y z"; ‎c‎h ar l‎e tter‎= 'x‎';‎ pr‎i ntf(‎"stri‎n g be‎f ore ‎s trns‎e t: %‎s\n",‎stri‎n g); ‎s‎t rnse‎t(str‎i ng, ‎l ette‎r, 13‎);‎ pri‎n tf("‎s trin‎g aft‎e r s‎t rnse‎t: %s‎\n", ‎s trin‎g);‎r‎e turn‎0;‎}‎‎函数名: ‎s trpb‎r k功‎能: ‎在串中查找‎给定字符集‎中的字符‎用法‎: cha‎r *st‎r pbrk‎(char‎*str‎1, ch‎a r *s‎t r2);‎程序例‎:#‎i nclu‎d e <s‎t dio.‎h>#‎i nclu‎d e <s‎t ring‎.h>‎int ‎m ain(‎v oid)‎{‎ ch‎a r *s‎t ring‎1 = "‎a bcde‎f ghij‎k lmno‎p qrst‎u vwxy‎z";‎ ch‎a r *s‎t ring‎2 = "‎o nm";‎‎c har ‎*ptr;‎‎ptr ‎= str‎p brk(‎s trin‎g1, s‎t ring‎2);‎i‎f (pt‎r)‎‎p rint‎f("st‎r pbrk‎foun‎d fir‎s t ch‎a ract‎e r: %‎c\n",‎*ptr‎); ‎ els‎e‎ p‎r intf‎("str‎p brk ‎d idn'‎t fin‎d cha‎r acte‎r in ‎s et\n‎");‎r‎e turn‎0;‎}‎‎函数‎名: st‎r rchr‎功‎能: 在串‎中查找指定‎字符的最后‎一个出现‎用法‎: cha‎r *st‎r rchr‎(char‎*str‎, cha‎r c);‎程序例‎:#‎i nclu‎d e <s‎t ring‎.h>‎#incl‎u de <‎s tdio‎.h>‎int ‎m ain(‎v oid)‎{‎ ch‎a r st‎r ing[‎15]; ‎c‎h ar *‎p tr, ‎c = '‎r';‎s‎t rcpy‎(stri‎n g, "‎T his ‎i s a ‎s trin‎g"); ‎p‎t r = ‎s trrc‎h r(st‎r ing,‎c); ‎i‎f (pt‎r)‎‎p rint‎f("Th‎e cha‎r acte‎r %c ‎i s at‎posi‎t ion:‎%d\n‎", c,‎ptr-‎s trin‎g); ‎ el‎s e‎‎p rint‎f("Th‎e cha‎r acte‎r was‎not ‎f ound‎\n");‎‎r etur‎n 0; ‎}‎‎函‎数名: s‎t rrev‎功‎能: 串倒‎转用‎法: c‎h ar *‎s trre‎v(cha‎r *st‎r);‎程序例: ‎#in‎c lude‎<str‎i ng.h‎>#i‎n clud‎e <st‎d io.h‎>i‎n t ma‎i n(vo‎i d)‎{‎char‎*for‎w ard ‎= "st‎r ing"‎;‎ pri‎n tf("‎B efor‎e str‎r ev()‎: %s\‎n", f‎o rwar‎d);‎ st‎r rev(‎f orwa‎r d); ‎p‎r intf‎("Aft‎e r st‎r rev(‎): %‎s\n",‎forw‎a rd);‎‎r etur‎n 0; ‎}‎函数‎名: st‎r set ‎功能‎:将一个‎串中的所有‎字符都设为‎指定字符‎用法‎: cha‎r *st‎r set(‎c har ‎*str,‎char‎c); ‎程序例:‎#i‎n clud‎e <st‎d io.h‎>#i‎n clud‎e <st‎r ing.‎h>‎i nt m‎a in(v‎o id) ‎{‎ cha‎r str‎i ng[1‎0] = ‎"1234‎56789‎";‎ cha‎r sym‎b ol =‎'c';‎‎prin‎t f("B‎e fore‎strs‎e t():‎%s\n‎", st‎r ing)‎;‎strs‎e t(st‎r ing,‎symb‎o l); ‎p‎r intf‎("Aft‎e r st‎r set(‎): %‎s\n",‎stri‎n g); ‎r‎e turn‎0;‎}‎‎函数‎名: st‎r spn ‎功能‎:在串中‎查找指定字‎符集的子集‎的第一次出‎现用‎法: i‎n t st‎r spn(‎c har ‎*str1‎, cha‎r *st‎r2); ‎程序例:‎#i‎n clud‎e <st‎d io.h‎>#i‎n clud‎e <st‎r ing.‎h>#‎i nclu‎d e <a‎l loc.‎h>‎i nt m‎a in(v‎o id) ‎{‎ cha‎r *st‎r ing1‎= "1‎23456‎7890"‎;‎char‎*str‎i ng2 ‎= "12‎3DC8"‎;‎int ‎l engt‎h;‎ le‎n gth ‎= str‎s pn(s‎t ring‎1, st‎r ing2‎);‎ pri‎n tf("‎C hara‎c ter ‎w here‎stri‎n gs d‎i ffer‎is a‎t pos‎i tion‎%d\n‎", le‎n gth)‎;‎retu‎r n 0;‎}‎‎函数名‎: str‎s tr‎功能:‎在串中查‎找指定字符‎串的第一次‎出现用‎法: ‎c har ‎*strs‎t r(ch‎a r *s‎t r1, ‎c har ‎*str2‎);程‎序例:‎#inc‎l ude ‎<stdi‎o.h> ‎#inc‎l ude ‎<stri‎n g.h>‎in‎t mai‎n(voi‎d){‎‎c har ‎*str1‎= "B‎o rlan‎d Int‎e rnat‎i onal‎", *s‎t r2 =‎"nat‎i on",‎*ptr‎;‎ ptr‎= st‎r str(‎s tr1,‎str2‎);‎ pri‎n tf("‎T he s‎u bstr‎i ng i‎s: %s‎\n", ‎p tr);‎‎r etur‎n 0; ‎}‎‎函数名:‎strt‎o d功‎能: ‎将字符串转‎换为dou‎b le型值‎用‎法: do‎u ble ‎s trto‎d(cha‎r *st‎r, ch‎a r **‎e ndpt‎r);‎程序例: ‎#in‎c lude‎<std‎i o.h>‎#in‎c lude‎<std‎l ib.h‎>i‎n t ma‎i n(vo‎i d)‎{‎char‎inpu‎t[80]‎, *en‎d ptr;‎‎d oubl‎e val‎u e;‎p‎r intf‎("Ent‎e r a ‎f loat‎i ng p‎o int ‎n umbe‎r:");‎‎g ets(‎i nput‎);‎ val‎u e = ‎s trto‎d(inp‎u t, &‎e ndpt‎r);‎ pr‎i ntf(‎"The ‎s trin‎g is ‎%s th‎e num‎b er i‎s %lf‎\n", ‎i nput‎, val‎u e); ‎ r‎e turn‎0;‎}‎‎函数‎名: st‎r tok ‎功能‎:查找由‎在第二个串‎中指定的分‎界符分隔开‎的单词‎用法:‎char‎*str‎t ok(c‎h ar *‎s tr1,‎char‎*str‎2);‎程序例: ‎#in‎c lude‎<str‎i ng.h‎>#i‎n clud‎e <st‎d io.h‎>i‎n t ma‎i n(vo‎i d)‎{‎char‎inpu‎t[16]‎= "a‎b c,d"‎;‎char‎*p; ‎‎/* st‎r tok ‎p lace‎s a N‎U LL t‎e rmin‎a tor ‎i‎n fro‎n t of‎the ‎t oken‎, if ‎f ound‎*/‎ p ‎= str‎t ok(i‎n put,‎",")‎;‎if (‎p) ‎p rint‎f("%s‎\n", ‎p);‎/‎* A s‎e cond‎call‎to s‎t rtok‎usin‎g a N‎U LL‎ as‎the ‎f irst‎para‎m eter‎retu‎r ns a‎poin‎t er‎ to‎the ‎c hara‎c ter ‎f ollo‎w ing ‎t he t‎o ken ‎*/‎ p ‎= str‎t ok(N‎U LL, ‎",");‎‎i f (p‎) p‎r intf‎("%s\‎n", p‎);‎ ret‎u rn 0‎;} ‎‎‎函数名:‎strt‎o l功‎能: ‎将串转换为‎长整数‎用法:‎long‎strt‎o l(ch‎a r *s‎t r, c‎h ar *‎*endp‎t r, i‎n t ba‎s e); ‎程序例:‎#i‎n clud‎e <st‎d lib.‎h>#‎i nclu‎d e <s‎t dio.‎h>‎i nt m‎a in(v‎o id) ‎{‎ cha‎r *st‎r ing ‎= "87‎65432‎1", *‎e ndpt‎r;‎ lon‎g lnu‎m ber;‎‎/* s‎t rtol‎conv‎e rts ‎s trin‎g to ‎l ong ‎i nteg‎e r *‎/‎lnum‎b er =‎strt‎o l(st‎r ing,‎&end‎p tr, ‎10); ‎p‎r intf‎("str‎i ng =‎%s ‎l ong ‎= %ld‎\n", ‎s trin‎g, ln‎u mber‎); ‎ re‎t urn ‎0;}‎‎函数名:‎stru‎p r功‎能: ‎将串中的小‎写字母转换‎为大写字母‎用‎法: ch‎a r *s‎t rupr‎(char‎*str‎);程‎序例:‎#inc‎l ude ‎<stdi‎o.h> ‎#inc‎l ude ‎<stri‎n g.h>‎in‎t mai‎n(voi‎d){‎‎c har ‎*stri‎n g = ‎"abcd‎e fghi‎j klmn‎o pqrs‎t uvwx‎y z", ‎*ptr;‎‎/* c‎o nver‎t s st‎r ing ‎t o up‎p er c‎a se c‎h arac‎t ers ‎*/‎ ptr‎= st‎r upr(‎s trin‎g);‎ pr‎i ntf(‎"%s\n‎", pt‎r);‎ re‎t urn ‎0;}‎‎‎函数名‎: swa‎b功‎能: 交‎换字节‎用法:‎void‎swab‎(cha‎r *fr‎o m, c‎h ar *‎t o, i‎n t nb‎y tes)‎;程序‎例:‎#incl‎u de <‎s tdli‎b.h> ‎#inc‎l ude ‎<stdi‎o.h> ‎#inc‎l ude ‎<stri‎n g.h>‎ch‎a r so‎u rce[‎15] =‎"rFn‎a koB‎l rna ‎d";‎c har ‎t arge‎t[15]‎;i‎n t ma‎i n(vo‎i d)‎{‎swab‎(sour‎c e, t‎a rget‎, str‎l en(s‎o urce‎));‎ pr‎i ntf(‎"This‎is t‎a rget‎: %s\‎n", t‎a rget‎);‎ ret‎u rn 0‎;} ‎‎‎。

wincc学习技巧

wincc学习技巧

一、组态软件、 C 语言基础1. WINCC 中的语言Wincc 语言由C 脚本(C-script )和B 脚本(VB-script )组成。

WINCC中C脚本:(1)C动作(在画布中编辑的程序代码)。

(2)全局脚本编辑器:项目函数、标准函数和内部函数。

项目函数:自定义本项目(保护性)标准函数:编辑好供C 动作调用内部函数:(微软)自定义编辑函数在项目函数中例如:#pragma()int NEW_Add (int a; in b){int c;c=a+b;return c;}2. WINCC中的(Tag)变量——程序使用的变量(书上P31--35)变量:C 变量、WINCC 变量C变量:int(数值型卜char(字符型)、BOOL(布尔型)---也就是二进制(为常用)WINCC变量:word(数值型)、char(字符型)、Bit(布尔型)(为常用)常用变量如下:布尔型:SetTagBit(参数1,参数2)、GetTagBit(参数)数值型:SetTagWord(参数1,参数2)、GetTagWord(参数)字符型:SetTagChar(参数1,参数2)、GetTagChar(参数)参数1 :变量名。

参数2:具体要求。

例如参数1 为液位,参数2 为a 举例1 二进制变量“启动”控制电机启停BOOL a;a= GetTagBit(“启动”);if(a==0)SetTagBit(启动” 1);举例2 二进制变量“启动”控制电机启停BOOL a;static int i=0;( 类似int a= GetTagBit( “启动”);if(a==0)i++;两者区别:i; i=0;)不加static 启动一次i=1 启动二次i=1 加static启动一次i=1启动二次i=2启动三次i=1 启动三次i=3启动四次i=1 启动四次i=43. WINCC 中的运算符3.WINCC 中的常用语句三、变量组态WINCC 中的变量分为:内部变量、外部变量和C 动作(函数中的变量)1. 利用变量进行增减计数步骤1:进行画面构建,需要两个按钮和一个输入输出域(属性调整-)(变量、有变化时、输出)。

WINCC C函数用法大全

WINCC C函数用法大全
#include <stdio.h>
int main(void)
{
char *buf1 = "BBB", *buf2 = "bbb";
int ptr;
ptr = strcmpi(buf2, buf1);
if (ptr > 0)
printf("buffer 2 is greater than buffer 1\n");
char string[10];
char *str1 = "abcdefghi";
stpcpy(string, str1);
printf("%s\n", string);
return 0;
}
函数名: strcat
功 能: 字符串拼接函数
{
char string[15];
char *ptr, c = 'r';
strcpy(string, "This is a string");
ptr = strchr(string, c);
if (ptr)
printf("The character %c is at position: %d\n", c, ptr-string);
char *string2 = "747DC8";
int length;
length = strcspn(string1, string2);
printf("Character where strings intersect is at position %d\n", length);

WinCC标准函数总结

WinCC标准函数总结

WinCC标准函数该系统包含标准函数。

可以按需要修改这些函数。

此外,还可以自己创建标准函数。

该系统包括一个标准函数集。

一、Alarm - 简短描述Alarm组包含控制WinCC报警控件的函数。

标准函数可用于工具栏中的每一个按钮。

这些函数可用来创建自定义工具栏,例如选择画面,或者定义控件上的设置。

1.void AcknowledgeMessage(DWORD MsgNr)函数,确认消息系统中带编号的消息,该编号被传递为参数。

使用标准函数操作WinCC报警控件的实例{//确认选择的报警记录消息AcknowledgeMessage(GetTagWord("U08i_MsgNr"));}指定待确认的消息号。

在本例中是从变量读取的。

2.BOOL AXC_OnBtnArcLong(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在长期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

3.BOOL AXC_OnBtnArcShort(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在短期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

winccc函数用法大全(WINCCCfunctionDaquan)

winccc函数用法大全(WINCCCfunctionDaquan)

wincc c函数用法大全(WINCC C function Daquan)Function name: stpcpyFunction: copy one string to anotherUsage: char, *stpcpy (char, *destin, char, *source); Procedure example:#include <stdio.h>#include <string.h>Int main (void){Char string[10];Char *str1 = "abcdefghi"";Stpcpy (string, STR1);Printf ("%s\n", string);Return 0;}Function name: strcatFunction: string concatenation functionUsage: char, *strcat (char, *destin, char, *source); Procedure example:#include <string.h>#include <stdio.h>Int main (void){Char destination[25];Char, *blank = "", *c = "C++", *Borland = "Borland""; Strcpy (destination, Borland);Strcat (destination, blank);Strcat (destination, C);Printf ("%s\n", destination);Return 0;}Function name: strchrFunction: finding the first match of a given character in a string \Usage: char, *strchr (char, *str, char, C);Procedure example:#include <string.h>#include <stdio.h>Int main (void){Char string[15];Char, *ptr, C ='r';Strcpy (string, This, is, a, string);PTR = strchr (string, C);If (PTR)Printf (The, character,%c, is, at,%d\n, position:, C,ptr-string);ElsePrintf ("The character was not found\n");Return 0;}Function name: StrCmpFunction: string comparisonUsage: int, StrCmp (char, *str1, char, *str2);Look at the Asic code, str1>str2, return value > 0; two strings equal, return 0Procedure example:#include <string.h>#include <stdio.h>Int main (void){Char, *buf1 = AAA, *buf2 = BBB, *buf3 = ccc";Int ptr;PTR = StrCmp (buf2, buf1);If (PTR > 0)Printf ("buffer 2, is, greater, than, buffer, 1\n");ElsePrintf ("buffer 2, is, less, than, buffer, 1\n");PTR = StrCmp (buf2, buf3);If (PTR > 0)Printf ("buffer 2, is, greater, than, buffer, 3\n");ElsePrintf ("buffer 2, is, less, than, buffer, 3\n");Return 0;}Function name: strncmpiFunction: compare a part of a string with another string, case or caseUsage: int, strncmpi (char, *str1, char, *str2, unsigned, maxlen);Procedure example:#include <string.h>#include <stdio.h>Int main (void){Char *buf1 = "BBB", *buf2 = "BBB"";Int ptr;PTR = strcmpi (buf2, buf1);If (PTR > 0)Printf ("buffer 2, is, greater, than, buffer, 1\n"); If (PTR < 0)Printf ("buffer 2, is, less, than, buffer, 1\n");If (PTR = 0)Printf ("buffer 2, equals, buffer, 1\n");Return 0;}Function name: strcpyFunction: String copyUsage: char, *strcpy (char, *str1, char, *str2);Procedure example:#include <stdio.h>#include <string.h>Int main (void){Char string[10];Char *str1 = "abcdefghi"";Strcpy (string, STR1);Printf ("%s\n", string);Return 0;}Function name: strcspnFunction: find the first segment of a given character set ina stringUsage: int, strcspn (char, *str1, char, *str2);Procedure example:#include <stdio.h>#include <string.h>#include <alloc.h>Int main (void){char * string1 = "1234567890";char * string2 = "747dc8";int length;length = strcspn (string1, string2);printf ("where the character strings intersect ice position% d \ n", length);return 0;}函数名: strdup功能: 将串拷贝到新建的位置处用法: char * strdup (char * str);程序例:# include stdio.h > <# include string.h > <# include alloc.h > <int main (void){char * tab _ str, * string = "abcde"; tab _ str = strdup (string);printf ("% s" n "tab _ str);free (dup _ str);return 0;}函数名: stricmp功能: 以大小写不敏感方式比较两个串用法: int stricmp (char * str1, char * str2);程序例:# include string.h > <# include stdio.h > <int main (void){char * buf1 = "bbb" * buf2 = "bbb";int ptr;ptr = stricmp (buf2, buf1);if (ptr > 0).printf ("buffer 2 is greater than buffer 1 \ n"); if (ptr < 0)printf ("buffer 2 ice less than buffer 1 \ n");if (ptr = = 0)printf ("buffer 2 equals buffer 1 \ n"); return 0;}函数名: strerror功能: 返回指向错误信息字符串的指针用法: char * strerror (int errnum);程序例:# include stdio.h > <# include errno.h > <int main (void){char * buffer;buffer = strerror (errno);printf ("error:% s% n" buffer);return 0;}函数名: strcmpi功能: 将一个串与另一个比较, 不管大小写用法: int strcmpi (char * str1, char * str2);程序例:# include string.h > <# include stdio.h > <int main (void){char * buf1 = "bbb" * buf2 = "bbb";int ptr;ptr = strcmpi (buf2, buf1);if (ptr > 0).printf ("buffer 2 is greater than buffer 1 \ n"); if (ptr < 0)printf ("buffer 2 ice less than buffer 1 \ n");if (ptr = = 0)printf ("buffer 2 equals buffer 1 \ n");return 0;}函数名: strncmp功能: 串比较用法: int strncmp (char * str1 str2, char *, int maxlen); 程序例:# include string.h > <# include stdio.h > <int main (void){char * buf1 = "aaabbb" * buf2 = "bbbccc" * buf3 = "ccc"; int ptr;ptr = strncmp (buf2, buf1,3);if (ptr > 0).printf ("buffer 2 is greater than buffer 1 \ n");elseprintf ("buffer 2 ice less than buffer 1 \ n");ptr = strncmp (buf2, buf3,3);if (ptr > 0).printf ("buffer 2 is greater than buffer 3 \ n");elseprintf ("buffer 2 ice less than buffer 3 \ n");return (0);}函数名: strncmpi功能: 把串中的一部分与另一串中的一部分比较, 不管大小写用法: int strncmpi (char * str1, char * str2);程序例:# include string.h > <# include stdio.h > <int main (void){char * buf1 = "bbbccc" * buf2 = "bbbccc";int ptr;ptr = strncmpi (buf2, buf1,3);if (ptr > 0).printf ("buffer 2 is greater than buffer 1 \ n"); if (ptr < 0)printf ("buffer 2 ice less than buffer 1 \ n"); 如果(ptr = = 0)printf(“缓冲2等于缓冲1 \n”);返回0;}函数名:strncpy功能:串拷贝用法:char * strncpy(char *德斯坦,源字符串,整数maxlen);程序例:#包括< stdio. h >#包括<字符串。

WINCC-C脚本大全

WINCC-C脚本大全

WINCC C脚本的标准函数 12009-08-06 17:04标准函数该系统包含标准函数。

可以按需要修改这些函数。

此外,还可以自己创建标准函数。

该系统包括一个标准函数集。

一、Alarm - 简短描述Alarm组包含控制WinCC报警控件的函数。

标准函数可用于工具栏中的每一个按钮。

这些函数可用来创建自定义工具栏,例如选择画面,或者定义控件上的设置。

1.void AcknowledgeMessage(DWORD MsgNr)函数,确认消息系统中带编号的消息,该编号被传递为参数。

使用标准函数操作WinCC报警控件的实例{//确认选择的报警记录消息AcknowledgeMessage(GetTagWord("U08i_Msg Nr"));}指定待确认的消息号。

在本例中是从变量读取的。

2.BOOL AXC_OnBtnArcLong(char* lpszPi ctureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在长期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Contro l1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

3.BOOL AXC_OnBtnArcShort(char* lpszPic tureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在短期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Contro l1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

WINCC C脚本

WINCC C脚本

Geometry -简短描述使用Geometry组中的函数可以修改或调用对象的大小、位置和其它几何属性。

1. long int GetActualPointLeft(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函数,指定多边形或折线中当前位置的X轴数值。

读出对象位置的实例{long lPos;//获得对象的X轴位置lPos= GetLeft(lpszPictureName,"WinCCLogo");//自定义代码//在那里用户可以使用返回值做某事...}GetLeft函数参数:“lpszPictureName”是在其中组态该对象的画面的名称。

“WinCCLogo”是该对象的名称。

1).读出对象的当前X轴位置以及lPos中的缓冲区。

2).执行处理返回值的自定义代码。

2. long int GetActualPointTop(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函数,指定多边形或折线中当前顶点的Y轴数值。

读出对象位置的实例{long lPos;//获得对象的Y轴位置lPos= GetTop(lpszPictureName,"WinCCLogo");//自定义代码//在那里用户可以使用返回值做某事...}GetTop函数参数:“lpszPictureName”是在其中组态该对象的画面的名称。

“WinCCLogo”是该对象的名称。

3. long int GetBoxCount(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函数,指定复选框和单选框的数字域。

参数lpszPictureName画面名lpszObjectName4. long int GetDirection(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函数,使用棒图对象时,它指出棒图的方向。

关于Wincc的C函数(6)

关于Wincc的C函数(6)

关于Wincc的C函数(6)关于Wincc的C函数(6)二、内部函数内部函数用来画图形对象和使归档动态化,并用于项目函数、标准函数和全局脚本动作中。

在整个项目中都识别内部函数。

既不能创建新的内部函数,也不能修改已存在的内部函数。

1. allocate保留和释放工作存储器空间的函数void SysFree(void* lpFree)函数,通过SysMalloc函数释放保留的存储器区域。

参数lpFree,指向通过SysMalloc函数保留的存储器区域的指针。

2. void* SysMalloc(unsigned long int size)函数,为动作保留存储器空间。

存储器区域被分配给该动作。

已完成动作和已传送结果时,系统再次释放存储器。

SysFree函数可用来过早释放保留的存储器空间。

参数size,按字节计算的存储器区域的大小。

3. c_bib函数组c_bib包含来自C库的C函数Graphics - 简短描述使用Graphics组中的函数可以修改或调用WinCC对象的图形属性。

Axes - 简短描述Axes组中的函数仅用于棒图对象。

该函数可用来修改或调用各种棒图对象属性。

1. BOOL GetAlignment(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函数,使用棒图对象时,它指明文本在棒图的左面还是右面。

读出棒图对象的布尔型属性的实例{BOOL bscaling;//获得标尺状态 bscaling= GetScaling(lpszPictureName,"Bar1");if (bscaling){// 自定义代码// 棒图对象有一个附加的标尺...}else{// 自定义代码// 棒图对象没有附加的刻度...}}GetScaling函数参数:“lpszPictureName”是在其中组态该对象的画面的名称。

“Bar1”是该对象的名称。

wincc标准函数

wincc标准函数

wincc标准函数该系统包含标准函数。

可以按需要修改这些函数。

此外,还可以自己创建标准函数。

该系统包括一个标准函数集。

一、Alarm - 简短描述Alarm组包含控制WinCC报警控件的函数。

标准函数可用于工具栏中的每一个按钮。

这些函数可用来创建自定义工具栏,例如选择画面,或者定义控件上的设置。

1.void AcknowledgeMessage(DWORD MsgNr)函数,确认消息系统中带编号的消息,该编号被传递为参数。

使用标准函数操作WinCC报警控件的实例{//确认选择的报警记录消息AcknowledgeMessage(GetTagWord("U08i_MsgNr"));}指定待确认的消息号。

在本例中是从变量读取的。

2.BOOL AXC_OnBtnArcLong(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在长期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

3.BOOL AXC_OnBtnArcShort(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在短期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

WINCC几个常用C语言编程

WINCC几个常用C语言编程

WINCC几个常用C语言编程全局脚本编程(按钮连续增减)说明:1、建立全局脚本函数2、建立全局动作C脚本3、在启动画面的打开画面中调用全局脚本函数4、在计算机的启动选项中选中全局脚本?全局脚本函数InitAction ()extern char tagname[30] =" ";extern SHORT count = 0;extern FLOAT low = 0;extern FLOAT high = 0;extern FLOAT step = 0;void InitAction()?按钮左键按下连续增加extern char tagname[30];extern SHORT count;extern FLOAT low;extern FLOAT high;strcpy(tagname,"S32i_varia_but_04"); count = 1;low = 0;high =1400;step =;?按钮左键按下连续减少extern char tagname[30];extern SHORT count;extern FLOAT low;extern FLOAT high;extern FLOAT step;strcpy(tagname,"S32i_varia_but_04"); count = 2;low = 0;high =1400;step =;?按钮左键松开停止增减count=0;???????全局动作C脚本()#include""int gscAction( void ) {extern char tagname[30]; extern SHORT count;extern FLOAT high;extern FLOAT step;?FLOAT value;if((count==1)||(count==2)) {//get current valuevalue = GetTagFloat (tagname);if(count==1){ //incvalue = value+step;if(value>high) (value=high); //high limit }//ifif(count==2){ //dec?value = value-step;if(value<low) (value=low); //low limit }//ifSetTagFloat (tagname,value);}//if?return(0);}?全局脚本函数(InitAction)文件:C脚本()文件:按钮左键连续增加文件:按钮左键松开文件:??C脚本编程(按钮按击增减)1、直接调用C动作方式实现:#include""void OnLButtonDown(char* lpszPictureName,char* lpszObjectName,char* lps zPropertyName,UINT nFlags,int x,int y){FLOAT value;value=GetTagFloat("S32i_varia_but_00"); //get tag valueif(value>1300) (value=1400); //check limitelse value=value+100; //inc valueSetTagFloat("S32i_varia_but_00",value); //set new value?2、调用函数方式实现(incdecvalue):FLOAT value;value=GetTagFloat ("S32i_varia_but_04");IncDecValue(&value,0,1400,100,1);SetTagFloat ("S32i_varia_but_04",value);?项目函数(incdecvalue)void IncDecValue(FLOAT *value,FLOAT low,FLOAT high,FLOAT step,DWORD a) {FLOAT v;v=*value; //get current valueswitch(a){case0: {if(v<step) (v=0); //low limitelse v=v-step; //decrement} //case 0break;case1:{if(v>(high-step))(v=high); //high limitelse v=v+step; //increment}//case 1break;}//switch*value=v; //return}项目函数(incdecvalue)文件:??C脚本编程(按钮切换开关):#include ""void OnLButtonDown(char* lpszPictureName,char* lpszObjectName,char* lps zPropertyName,UINT nFlags,int x,int y){BOOL state; //flip tagstate = !GetTagBit("BINi_varia_but_16"), SetTagBit("BINi_varia_but_16",(SHORT)state); }按钮切换开关文件:。

Wincc常用C脚本及常用功能

Wincc常用C脚本及常用功能

Wincc常用C脚本及常用功能打开用户管理器ProgramExecute("Passcs.exe"); 取消激活#include "apdefap.h"void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName,UINT nFlags, int x, int y){#pragma option(mbcs)HWND hwnd=NULL;int iRet;hwnd=FindWindow(NULL,"WinCC-运行系统 - "); //获得句柄iRet=MessageBox(hwnd,"是否取消激活?","Deactivate",MB_OKCANCEL|MB_ICONWARNING|MB_APPLMODAL);if(iRet==1)DeactivateRTProject (); //Return-Type: BOOL}关闭计算机#include "apdefap.h"void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName,UINT nFlags, int x, int y){#pragma option(mbcs)HWND hwnd=NULL;int iRet;hwnd=FindWindow(NULL,"WinCC-运行系统 - ");iRet=MessageBox(hwnd,"是否关闭计算机?","ShutDown",MB_OKCANCEL|MB_ICONWARNING|MB_APPLMODAL);if(iRet==1)DMExitWinCCEx(DM_SDMODE_SYSTEM); }==================================================================== ==登陆代码:#pragma code(“useadmin.dll”)#include <pwrt_api.h>#pragma code()PWRTLogin (…e?);==================================== 取消激活(Deactivate)DeactivateRTProject();====================================== Wincc变量操作GetTagDWord(“变量名称”); 获取Wincc变量值SetTagDWord(“变量“,设定值); 设置Wincc变量对文本读写操作写操作#include "apdefap.h"void OnLButtonUp(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName,UINT nFlags, int x, int y) {#pragma option(mbcs)FILE* lpFile;char *shuzhu[6]={"tag_1","tag_2","tag_3","tag_4","tag_5","tag_6"};char* lpszStr;int i,j;lpszStr=SysMalloc(60); //Return-Type: void*lpFile = fopen("D:\\test.txt", "w+");for(i=0;i<6;i++){lpszStr=GetTagChar(shuzhu[i]); strcat(lpszStr,"\r\n");if(lpFile == NULL){ printf("can not open file\r\n"); return;}fprintf(lpFile, lpszStr); }SysFree(lpszStr);fclose(lpFile);}读操作#include "apdefap.h"void OnLButtonUp(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName,UINT nFlags, int x, int y) {#pragma option(mbcs)char* shuzhu[6]={"tag_1","tag_2","tag_3","tag_4","tag_5","tag_6"}; char tmp[255];int i=0;int ChrNumLine=38;FILE *fp;fp=fopen("D:\\test.txt","r"); if (fp==NULL){return;}else{rewind(fp);while(!feof(fp)){fgets(tmp,ChrNumLine,fp);SetTagChar(shuzhu[i],tmp);i++;}}fclose(fp);}画面窗口显示界面切换SetPictureName(lpszPictureName,"PicWindow_button","produce_manage_bu tton.pdl");SetVisible(lpszPictureName,"PicWindow_button",1);注:PicWindow_button是画面窗口名称;produce_manage_button.pdl是要显示的子画面。

Wincc界面制作:C脚本的实际操作

Wincc界面制作:C脚本的实际操作

Wincc界面制作:C脚本的实际操作概述本文档介绍了在Wincc界面制作中使用C脚本的实际操作。

通过使用C脚本,您可以实现更复杂的逻辑和功能,提升Wincc界面的灵活性和交互性。

C脚本的基本语法C脚本是一种编程语言,用于控制Wincc界面的行为和响应。

以下是C脚本的基本语法:- 代码块使用花括号({})包围。

- 使用分号(;)表示语句的结束。

- 使用双斜杠(//)表示注释,注释的内容将被忽略。

在Wincc界面中使用C脚本在Wincc界面制作中,您可以将C脚本与各种控件和事件关联,以实现特定的功能和行为。

以下是一些常见的C脚本应用示例:控件事件响应您可以为控件(如按钮、文本框等)添加事件响应函数,以实现用户交互时的相应操作。

例如,当用户点击按钮时,可以触发相应的事件处理函数。

数据处理与逻辑控制通过C脚本,您可以对Wincc界面中的数据进行处理和控制。

例如,您可以编写代码来验证用户输入的数据是否合法,并根据结果做出相应的处理。

界面切换与导航使用C脚本,您可以实现界面之间的切换和导航功能。

例如,当用户点击某个按钮时,可以通过编写代码来切换到另一个界面。

数据库和文件操作通过C脚本,您可以实现对数据库和文件的读写操作。

例如,您可以编写代码来从数据库中检索数据,并将其显示在Wincc界面上。

实际操作示例以下是一个简单的实际操作示例,展示了如何使用C脚本实现一个简单的功能:// 定义一个变量,用于存储按钮点击次数int clickCount = 0;// 按钮点击事件处理函数void OnButtonClick(){// 每次点击增加计数clickCount++;// 更新界面上的文本显示SetText("label1", "按钮点击次数:" + clickCount);}在上述示例中,我们定义了一个变量`clickCount`,并在按钮点击事件处理函数`OnButtonClick`中对其进行增加,并通过`SetText`函数更新界面上的文本显示。

WinCC-VBscript常用函数

WinCC-VBscript常用函数

WinCC-VBscript常用函数WinCC VBscript常用函数1.数值型函数:abs(num): 返回绝对值sgn(num): num>0 1; num=0 0; num<0 -1;判断数值正负hex(num): 返回十六进制值直接表示:&Hxx 最大8位oct(num): 返回八进制值直接表示:&Oxx 最大8位sqr(num): 返回平方根 num>0int(num): 取整 int(99.8)=99; int(-99.2)=100fix(num): 取整 fix(99.8)=99; fix(-99.2)=99round(num,n): 四舍五入取小数位 round(3.14159,3)=3.142 中点数值四舍五入为近偶取整 round(3.25,1)=3.2log(num): 取以e为底的对数 num>0exp(n): 取e的n次幂通常用 num^nsin(num): 三角函数,以弧度为值计算 (角度*Pai)/180=弧度 con(num);tan(num); atn(num)2.字符串函数:len(str):计算字符串长度中文字符长度也计为一!mid(str,起始字符,[读取长度]):截取字符串中间子字符串left(str,nlen):从左边起截取nlen长度子字符串right(str,nlen):从右边起截取nlen长度子字符串Lcase(str):字符串转成小写Ucase(str):字符串转成大写trim(str):去除字符串两端空格Ltrim(str):去除字符串左侧空格Rtrim(str):去除字符串右侧空格replace(str,查找字符串,替代字符串,[起始字符,替代次数,比较方法]):替换字符串注:默认值:起始字符 1;替代次数不限;比较方法区分大小写(0)InStr([起始字符,]str,查找字符串[,比较方法]):检测是否包含子字符串可选参数需同时选返回起始位置InStrRev(str,查找字符串[,起始字符][,比较方法]):反向检测是否包含子字符串返回起始位置space(n):构造n个空格的字符串string(n,str):构造由n个str第一个字符组成的字符串StrReverse(str):反转字符串split(str,分割字符串[,次数][,比较方法]):以分割字符串为分割标志将字符串转为字符数组可选参数需同时选3.数据类型转换函数:Randmize n:启动随机数种子Rnd(n):取得随机数,n>0或为空,取序列下一随机值,n<0,随机值相同,n=0,生产与上一随机值相同的数取介于A和B之间的随机正数C,公式:C=Int((B-A+1)*Rnd+A) 条件(B>A)子程序和自定义函数Sub StrSubName Function StrFunName(arg[1],..)子程序体函数体Exit Sub 中途跳出 Exit Function 中途跳出End Sub StrFunName=Value 返回值End Function[call] StrSubName 引用子程序 Var=StrFunName(arg[1],..) 引用函数子程序和自定义函数可以递归调用;ASP六大对象常用语句示范:Response:Response.write StrVar/"String":向网页写出参数值或字符串等同于在Html 标记中嵌入<%=StrVar/"String"%>Response.End:停止页面编译,并将已经编译内容输出到浏览器Response.Buffer=True|False:页面编译时是否使用缓存的设置,一般在页面头部设置Response.Flush:强制输出页面已编译部分内容Response.Clear:将缓冲区内的数据清除Response.Redirect URL:停止页面编译或输出,转载指定所需页面Response.IsClientConnected:返回True|False,检测用户是否还处于连接状态Response.Charset(CharsetName):设置页面编码类型,即<metahttp-equiv="Content-Type" content="text/html; charset=gb2312"> Response.ContentType [= ContentType ]:设置页面文件类型,同上Response.Expires [= number]:设置页面失效时间,单位分钟Response.ExpiresAbsolute [= [date] [time]]:设置页面失效的绝对时间Response.Status = StatusDescription:设置页面状态描述Request:Request("PassStrName"):读取网页传递值,包括表单及以?PassStrName=value&PassStrName_n=value_n形式Request[.collection|property|method](variable)Request.querystring("PassStrName"):读取Get方法传递的表单值和?PassStrName=valueRequest.QueryString(Varible)[(Index).Count]Request.form("PassStrName"):读取Post方法传递的纯表单域的值Request.Form(Parameter)[(Index).Count]Request.ServerVaribles(Server Environment Variable):读取客户端系统环境变量,详见参考Request.BinaryRead(Count):读取指定字节数的传送值Request.TotalBytes:查询体的长度,以字节为单位,只读注:同名表单如:CheckBox如有多项值,传递形式如右,StrName=value1,value2,...需要用Split函数分割各项值Multiple的Select表单与CheckBox类似,TextArea的值可包含换行字符,用Replace转为<br>,以满足格式需要Session:(用户全局变量)Session("SesName")=value:存储Session变量值,也可读取该值Session("SesName")=Empty:判断Session值是否存在的两种方法IsEmpty(Session("SesName"))=True|False:判断Session值是否存在的两种方法Session.TimeOut=num:设置Session变量的存在时效,单位分钟Session.Abandon:清除所有Session变量值Session.SessionID:Session变量的ID序列号,只读Application:(应用程序全局变量)Application("AppName")=value:存储Application变量值,也可读取该值Application("AppName")=Empty:判断Application值是否存在的两种方法IsEmpty(Application("AppName"))=True|False:判断Application值是否存在的两种方法Application.Lock:Application变量值锁定,防止同时更改变量值Application.UnLock:Application变量值解锁,允许更改变量值注:Session与Application变量都可以用来存储数组和系统对象,引用方法是变量名相当于数组名而已,但不能直接改变其值,需要借助临时数组修改值后,再赋给Session与Application变量Global.asa文件的结构:<% @language="VBscript"%><% Sub Application_OnStart ...End SubSub Application_OnEnd ... End SubSub Session_OnStart ...End SubSub Session_OnEnd ... End Sub%>Server:Server.MapPath("FileUrl"):映射文件名的服务器站点绝对地址,Path=Server.MapPath(./)可以得到虚拟目录根路径Server.HtmlEncode("string"):转换为可以直接显示带Html格式的字符串,如:<,>等Server.URLEncode( "string"):转换为浏览器地址编码set Var=Server.CreatObject("ObjName"):创建对象变量Server.ScriptTimeout = NumSeconds:ASP程序页面执行时限,以秒为单位Cookies: 存储在用户本机的临时变量,每个Cookie的最大字节4KB,最多可以有300个Cookie 1.2MBResponse.cookies("StrCookieName")=value:存储Cookie变量值,也可读取该值Response.cookies("StrCookieName")="":判断是否为空Response.cookies("StrCookieName").Expires=Date:变量有效期,以天为单位,小于当前时间立即失效Response.Cookies(Cookie[(key).Attribute]):标准语法ObjectContext 控制ASP的事务处理ObjectContext.OnTransactionAbort:由放弃的事务处理事件激发,在脚本完成处理后发生ObjectContext.OnTransactionCommit:由成功的事务处理事件激发,在脚本完成处理后发生ObjectContext.SetAbort:显式的放弃一次事务处理ObjectContext.SetComplete:覆盖前面任何调用ObjectContext.SetAbort方法的调用Msgbox "string"/StrName:VBscript提示框表单的Onsubmit事件:在同一页面写入 Function FormName_onsubmit()..FormName_onsubmit=True/False..end Function,页面会在提交前先执行语句,并根据返回值判断是否完成提交任务。

WINCC C脚本

WINCC C脚本

Geometry -简短描述使用Geometry组中的函数可以修改或调用对象的大小、位置和其它几何属性。

1. long int GetActualPointLeft(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函数,指定多边形或折线中当前位置的X轴数值。

读出对象位置的实例{long lPos;//获得对象的X轴位置lPos= GetLeft(lpszPictureName,"WinCCLogo");//自定义代码//在那里用户可以使用返回值做某事...}GetLeft函数参数:“lpszPictureName”是在其中组态该对象的画面的名称。

“WinCCLogo”是该对象的名称。

1).读出对象的当前X轴位置以及lPos中的缓冲区。

2).执行处理返回值的自定义代码。

2. long int GetActualPointTop(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函数,指定多边形或折线中当前顶点的Y轴数值。

读出对象位置的实例{long lPos;//获得对象的Y轴位置lPos= GetTop(lpszPictureName,"WinCCLogo");//自定义代码//在那里用户可以使用返回值做某事...}GetTop函数参数:“lpszPictureName”是在其中组态该对象的画面的名称。

“WinCCLogo”是该对象的名称。

3. long int GetBoxCount(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函数,指定复选框和单选框的数字域。

参数lpszPictureName画面名lpszObjectName4. long int GetDirection(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函数,使用棒图对象时,它指出棒图的方向。

wincc函数标准

wincc函数标准

wincc函数标准WinCC函数标准。

WinCC是西门子公司开发的一款用于监控和数据采集的软件平台。

在WinCC 中,函数是非常重要的一部分,通过函数的使用,我们可以实现各种各样的功能。

本文将介绍WinCC函数标准的相关内容,包括函数的定义、使用方法以及一些常见的函数示例。

函数的定义。

在WinCC中,函数是一段封装好的代码,可以接受输入参数并返回一个值。

函数的定义包括函数名、参数列表、返回值类型和函数体。

在使用函数之前,我们需要先定义函数,然后才能在其他地方调用它。

函数的使用方法。

在WinCC中,我们可以通过VBScript或C Script来定义和调用函数。

在VBScript中,函数的定义格式如下:Function 函数名(参数列表)。

函数体。

函数名 = 返回值。

End Function。

在C Script中,函数的定义格式如下:返回值类型函数名(参数列表)。

{。

函数体。

return 返回值;}。

在定义好函数之后,我们可以在其他地方通过函数名和参数列表来调用函数,并获取返回值。

通过使用函数,我们可以将一些常用的功能封装起来,提高代码的复用性和可维护性。

常见的函数示例。

下面我们将介绍一些在WinCC中常见的函数示例,以便大家更好地理解函数的使用方法。

1. 计算两个数的和。

Function Add(a, b)。

Add = a + b。

End Function。

在这个示例中,我们定义了一个名为Add的函数,它接受两个参数a和b,然后返回它们的和。

2. 判断一个数是否为偶数。

Function IsEven(num)。

If num Mod 2 = 0 Then。

IsEven = True。

Else。

IsEven = False。

End If。

End Function。

在这个示例中,我们定义了一个名为IsEven的函数,它接受一个参数num,然后判断这个数是否为偶数,并返回相应的布尔值。

3. 获取当前时间。

wincc常用C脚本功能

wincc常用C脚本功能

.用户注销:#pragma code ("useadmin.dll")#include "PWRT_api.h"#pragma code()PWRTLogout();2.用户登录:#pragma code ("useadmin.dll")#include "PWRT_api.h"#pragma code()PWRTLogin('c');3.关闭项目并退出wincc:ExitWinCC ();4.退出运行到wincc资源管理器:DeactivateRTProject ();按钮变三种颜色#include "apdefap.h"long _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName){#pragma option(mbcs)if(GetTagWord("TX/ZSH001")==1)return 0x0000ff00;elseif(GetTagWord("TX/ZSL001")==1)return 0x000000ff;elsereturn 0x00c0c0c0;}一个调用按钮变色#include "apdefap.h"long _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName){#pragma option(mbcs)if(GetTagWord("NewTag")==0)return 0x0000ff00;elsereturn 0x00ffffff;}5.结束监控并关闭计算机(会弹出确认对话框)HWND hWnd = NULL;//Author:Smartsysint iRet;hWnd = FindWindow(NULL,"WinCC-运行系统- ");iRet=MessageBox(hWnd,"结束监控并关闭计算机","关闭操作站",MB_YESNO|MB_ICONWARNING|MB_APPLMODAL);if(iRet==IDYES)DMExitWinCCEx (DM_SDMODE_POWEROFF);6.点击事件弹出对话框,通过点击弹出对话框的确定和取消按钮实现对变量的置位或取消:int r;r=MessageBox(NULL, "YES为开,NO为关", "确定开命令:",MB_YESNO |MB_SYSTEMMODAL);if (r==IDYES)SetTagBit("TAGNAME",TRUE);elseSetTagBit("TAGNAME",FALSE);7.开显示关显示:(要在部变量中建立三个二进制变量COLSE_DISPLAY、DISPLAY_NO和DISPLAY_COMMENT)// Funktion: Bit in Doppelwort setzen;if (GetTagBitWait("COLSE_DISPLAY")==1 ){SetTagBit("COLSE_DISPLAY",0);SetTagBit("DISPLAY_NO",0); //Return-Type: BOOLSetTagBit("DISPLAY_COMMENT",0);}else{SetTagBit("COLSE_DISPLAY",1);SetTagBit("DISPLAY_NO",1); //Return-Type: BOOLSetTagBit("DISPLAY_COMMENT",0);}8.开阀确认:BOOL a;a=GetTagBit("30T制水启动"); //Return-Type :short intif (a==0){if(MessageBox(NULL,"真的要启动制水吗?","操作提示",MB_YESNO|MB_ICONQUESTION|MB_SETFOREGROUND|MB_ SYSTEMMODAL) == 6){ SetTagBit("30T制水启动",1);//Return-Type :BOOL}}else{if(MessageBox(NULL,"真的要停止制水吗?","操作提示",MB_YESNO|MB_ICONQUESTION|MB_SETFOREGROUND|MB_ SYSTEMMODAL) == 6){ SetTagBit("30T制水停止",1);}}9.将WinCC运行画面最小化HWND WinCCHwnd;WinCCHwnd=FindWindow(NULL,"WinCC-Runtime - "); //如果运行语言为英文if (WinCCHwnd==0) WinCCHwnd=FindWindow(NULL,"WinCC-运行系统- "); //如果运行语言为中文CloseWindow(WinCCHwnd);10.显示或不显示(其中hiddVtext为部的二进制变量)if(GetTagBit("hiddVtext")==0) //Return-Type: BOOL{SetTagBit("hiddVtext",TRUE); //Return-Type: BOOL//Return-Type: BOOL}else{SetTagBit("hiddVtext",FALSE);}10.打开编辑画面的脚本#pragma option(mbcs)#ifdef RUN_ON_WEBNAVIGATOR#elseHWND hExplorerWindow= NULL;HWND hRuntimeWindow= NULL;hExplorerWindow=FindWindow("WinCCExplorerFrameWndClass",NULL);hRuntimeWindow=FindWindow("PDLRTisAliveAndWaitsForYou",NULL);if(hExplorerWindow){ShowWindow(hExplorerWindow, SW_MINIMIZE); // This entry is only necessary for Windows 2000ShowWindow(hExplorerWindow,SW_SHOWNORMAL);SetForegroundWindow(hExplorerWindow);}elseprintf("rn SetForeground failed");#endif11.如何在WINCC中制作一个保持型按钮方法1:if( GetTagBit("M10") )SetTagBit("M10",0);elseSetTagBit("M10",1);方法2:SetTagBit("M1.0",(SHORT)!GetTagBit("M1.0"));求反指令,如果为1点击变为0,如果为0点击变为1方法3:或者做两个按钮,按钮一:显示,直接连接m1.0,是--不显示,否--显示。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

WINCC C脚本的标准函数1--------------------------------------------------------------------------------标准函数该系统包含标准函数。

可以按需要修改这些函数。

此外,还可以自己创建标准函数。

该系统包括一个标准函数集。

一、Alarm - 简短描述Alarm组包含控制WinCC报警控件的函数。

标准函数可用于工具栏中的每一个按钮。

这些函数可用来创建自定义工具栏,例如选择画面,或者定义控件上的设置。

1.void AcknowledgeMessage(DWORD MsgNr)函数,确认消息系统中带编号的消息,该编号被传递为参数。

使用标准函数操作WinCC报警控件的实例{//确认选择的报警记录消息AcknowledgeMessage(GetTagWord("U08i_MsgNr"));}指定待确认的消息号。

在本例中是从变量读取的。

2.BOOL AXC_OnBtnArcLong(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在长期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

3.BOOL AXC_OnBtnArcShort(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在短期归档中。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

4.BOOL AXC_OnBtnComment(char* lpszPictureName, char* pszMsgWin)函数外部消息窗口操作,该函数显示先前所选消息的注释。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

5.BOOL AXC_OnBtnEmergAckn(char* lpszPictureName, char* pszMsgWin)函数,外部消息窗口操作,此函数打开确认对话框(紧急确认/复位)。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

6.BOOL AXC_OnBtnHornAckn(char* lpszPictureName, char* pszMsgWin)函数,外部消息窗口操作,该函数确认蜂鸣器信号。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

7.BOOL AXC_OnBtnInfo(char* lpszPictureName, char* pszMsgWin)函数,外部消息窗口操作,该函数显示信息文本。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

7.BOOL AXC_OnBtnLock(char* lpszPictureName, char* pszMsgWin)函数,外部消息窗口操作,该函数打开“设置锁定”对话框。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

8.BOOL AXC_OnBtnLockUnlock(char* lpszPictureName, char* pszMsgWin),函数,该函数锁住在消息窗口中选择的消息。

之后,不再归档该消息。

该函数释放在锁定列表中选择的消息。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

9.BOOL AXC_OnBtnLockWin(char* lpszPictureName, char* pszMsgWin)函数,外部消息窗口操作.该函数调用锁定列表。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

10.BOOL AXC_OnBtnLoop(char* lpszPictureName, char* pszMsgWin)函数,外部消息窗口操作,此函数触发所选消息的“报警回路”函数。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

11.BOOL AXC_OnBtnMsgFirst(char* lpszPictureName, char* pszMsgWin)函数,外部消息窗口操作,该函数移动到消息列表的开始处。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

12.BOOL AXC_OnBtnMsgLast(char* lpszPictureName, char* pszMsgWin)函数,外部消息窗口操作,该函数移动到消息列表的结束处。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的最后一条消息AXC_OnBtnMsgLast("gs_alarm_00","Control1");}AXC_OnBtnMsgLast函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

13.BOOL AXC_OnBtnMsgNext(char* lpszPictureName, char* pszMsgWin)函数,外部消息窗口操作,该函数移动到消息列表中的下一条消息。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

14.BOOL AXC_OnBtnMsgPrev(char* lpszPictureName, char* pszMsgWin)函数,外部消息窗口操作,该函数移动到消息列表中的前一条消息。

使用标准函数操作WinCC报警控件的实例{// 跳转到WinCC报警控件中的第一条消息AXC_OnBtnMsgFirst("gs_alarm_00","Control1");}AXC_OnBtnMsgFirst函数参数:“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。

Control 1是WinCC报警控件的对象名。

15.BOOL AXC_OnBtnMsgWin(char* lpszPictureName, char* pszMsgWin)函数,外部消息窗口操作,该函数调用过程消息窗口。

相关文档
最新文档