




已阅读5页,还剩66页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
MCGS系统内部函数MCGS内部为用户提供了一些常用的数学函数和对MCGS内部对象操作的函数。组态时,可在表达式中或用户脚本程序中直接使用这些函数。为了与其它名称相区别,系统内部函数的名称一律以“!”符号开头。下面分别介绍各个函数的用途和使用方法。运行环境操作函数!CallBackSvr(DatName)函数意义:调用后台对象返 回 值:数值型,后台对象的值参 数:DatName,对象名,数值型 实 例:X=!CallBackSvr(X),调用后台数值型对象X注 意:本函数在新版本MCGS系统内部,已经无效。为了保留与旧版本的兼容性,暂时保留。 !ChangeLoopStgy(StgyName,n)函数意义:改变循环策略的循环时间返 回 值:数值型。返回值=0:调用正常;0:调用不正常。参 数:StgyName,策略名;n,数值型,以毫秒数表示循环策略的循环时间实 例:!ChangeLoopStgy(报警策略,5000),将报警策略的循环时间改为为5秒!CloseAllWindow(WndName)函数意义:关闭所有窗口,如果在字符串”WndName”中指定了一个窗口,则打开这个窗口,关闭其他窗口。如果”WndName”为空串,则关闭所有窗口。返 回 值:数值型。返回值:=0:调用正常;0:调用不正常。参 数:WndName, 用户窗口名,字符型。实 例:!CloseAllWindow(“工况图”),关闭除了用户窗口“工况图”以外的其他窗口,若“工况图”窗口没有打开,则在关闭其他窗口的同时打开该窗口!CloseAllWindow(“”),关闭所有窗口。!EnableStgy(StgyName,n)函数意义:打开或关闭某个策略,如报警策略或循环策略等。返 回 值:数值型。返回值=0:调用正常;0:调用不正常。参 数:StgyName,策略名;n,数值型,为1时表示打开此策略,为0时表示关闭此策略。实 例:!EnableStgy(报警策略,1), 打开报警策略;!EnableStgy(报警策略,0), 关闭报警策略,使报警策略无效!GetDeviceName(Index)函数意义:按设备顺序取到设备的名字。返 回 值:字符型。调用成功返回设备名,调用失败时返回空字符串。参 数:Index,数值型。实 例:!GetDeviceName(0) ,取0号设备构件的名称。!GetDeviceState(DevName)函数意义:按设备名查询设备的状态。返 回 值:数值型。=-1调用不正常。=1 设备处于正常的工作状态。=2 设备正在工作,但设备不正常。=3 设备处于停止工作状态,且设备正常。=4 设备处于停止状态,且设备有错。参 数:DevName,设备名,字符型。实 例:!GetDeviceState( OmronPLC),读取设备构件“OmronPLC”的当前工作状态。!GetStgyName(Index)函数意义:按运行策略的顺序获得各策略块的名字。返 回 值:字符型。参 数:Index,数值型。实 例:!GetStgyName(0),取0号运行策略的名称。!GetWindowName(Index)函数意义:按用户窗口的顺序获得用户窗口的名字。返 回 值:字符型。参 数:Index, 数值型。实 例:!GetWindowName(0) ,读取0号用户窗口的名称。!GetWindowState(WndName)函数意义:按照名字取得用户窗口的状态。返 回 值:数值型。返回0:用户窗口处于关闭状态。返回1:用户窗口处于打开状态。返回2:用户窗口处于隐藏状态。参 数:WndName,用户窗口名称,字符型。实 例:!GetWindowState(工况图),获得用户窗口“工况图”的状态!SetActiveX(Activename,n,str)函数意义:操作指定的动画构件, 向窗口中的ActiveX控件发出控件命令返 回 值:无参 数:Activename,字符型,控件名称,用“.”分割窗口名和控件名,如:窗口0.控件1表示在用户窗口“窗口0”中的名为“控件1”的控件。n,数值型,命令类型,请填1;str,字符型,命令字符串,具体含义请参照控件帮助。实 例:!SetActiveX(“窗口0.控件0”,1,”start”),启动窗口0的控件0开始工作。!SetDevice(DevName,DevOp,CmdStr)函数意义:按照设备名字对设备进行操作。返 回 值:数值型。返回值:=0:调用正常;0:调用不正常。参 数:DevName,设备名,字符型;DevOp,设备操作码,数值型;CmdStr,设备命令字符串,只有当DevOp=6时CmdStr才有意义。DevOp取值范围及相应含义:1:启动设备开始工作。2:停止设备的工作使其处于停止状态。3:测试设备的工作状态。4:启动设备工作一次。5:改变设备的工作周期,CmdStr中包含新的工作周期,单位为ms。6:执行指定的设备命令,CmdStr中包含指定命令的格式。实 例:!SetDevice(OmronPLC,1, ),启动设备构件“OmronPLC”开始工作。!SetStgy(StgyName)函数意义:执行StgyName指定的运行策略。返 回 值:数值型。返回值=0:调用正常;0:调用不正常。参 数:StgyName,策略名,字符型。实 例:!SetStgy(阀门关闭),执行一次运行策略“阀门关闭”。!SetWindow(WndName,Op)函数意义:按照名字操作用户窗口,如打开、关闭、打印。返 回 值:数值型。返回值:=0:调用正常;0:调用不正常。参 数:WndName, 用户窗口名, 字符型。Op: 操作用户窗口的方法,数值型。Op=1:打开窗口并使其可见。Op=2:打开窗口并使其不可见。Op=3:关闭窗口。Op=4:打印窗口。Op=5:刷新窗口。实 例:!SetWindow(工况图,1),打开用户窗口“工况图”,并使其可见。!SysWindow()函数意义:执行该函数后,打开用户窗口管理窗口,在管理窗口中可以选择打开或关闭指定的用户窗口。返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:无。实 例:!SysWindow()!DisableCtrlAltDel()函数意义:屏蔽热键Ctrl+Alt+Del的功能。无法打开任务管理器窗口或执行锁定计算机注销关机密码修改等操作。返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:无。实 例:!DisableCtrlAltDel()注 意此函数在网络版客户端和WIN98操作系统下无效。!EnableCtrlAltDel()函数意义:恢复热键Ctrl+Alt+Del的功能。使用任务管理器关闭不响应的程序或执行锁定计算机注销关机修改密码等,为了维护系统安全的操作。返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:无。实 例:!EnableCtrlAltDel()注 意:1. 不要把这两个脚本函数同时使用,否则,看不到任何效果,没有任何意义;2. 不要把这两个函数放到循环中使用;3. 在使用这2个脚本函数时,最好与登录密码同时使用,以达到真正的热键屏蔽效果。4. 此函数在网络版客户端和WIN98操作系统下无效。 !RestartProject()函数意义:当检查组态工程在运行过程中出现非正常状态,可以调用该函数重新启动运行环境。该功能必须在加密狗生效时方可工作。返 回 值:无。参 数:无。实 例:!RestartProject()数据对象操作函数!AnswerAlm(DatName)函数意义:应答数据对象DatName所产生的报警。如对应的数据对象没有报警产生或已经应答,则本函数无效。返 回 值:数值型,=0为操作成功;0为操作失败。参 数:DatName,数据对象名;实 例:!AnswerAlm(电机温度),应答数据对象“电机温度”所产生的报警。!ChangeDataSave(Datname,n)函数意义:改变数据对象Datname存盘的周期。返 回 值:数值型,=0为操作成功;0为操作失败。参 数:Datname,数据对象名;n,数值型,以秒表示的存盘间隔时间实 例:ChangeDataSave(温度,5), 温度的存盘间隔时间为5秒!ChangeSaveDat(DatName,Num1,Num2)函数意义:改变数据对象DatName所对应存盘数据的存盘间隔,把Num1小时以前的存盘数据(以当前时间为0点)的存盘间隔改为Num2秒。本操作只对组对象有效,对单个的数据对象无效。当DataName =空字符,或Num1=0或Num2=0时,本操作无效。返 回 值:数值型,返回值=0:调用正常;0:调用不正常。参 数:DatName:数据对象名。Num1:数值型时间量,单位:小时。本函数用Num10的一些数值来表示一些特殊意义的操作:=-1 改变当天对应数据对象所有存盘数据的存盘间隔;=-2 改变昨天对应数据对象所有存盘数据的存盘间隔;=-3 改变本星期对应数据对象所有存盘数据的存盘间隔;=-4 改变上星期对应数据对象所有存盘数据的存盘间隔;=-5 改变本月对应数据对象所有存盘数据的存盘间隔;=-6 改变上个月对应数据对象所有存盘数据的存盘间隔;Num2:数值型时间量,新的存盘间隔,单位:秒。实 例:! ChangeSaveDat(电机1, -2, 5),把组对象“电机1”对应的存盘数据中昨天的存盘数据的存盘间隔改为5秒钟。!CopySaveDat(Tdb,Sdb,TabName,TimeField,Flag )函数意义:拷贝数据库中数据表的数据返 回 值:开关型,返回值=0:调用正常;返回值0:调用不正常。参 数:Tdb,目标数据库名;Sdb,源数据库名;TabName,数据表名;TimeField,定义的时间字段名;Flag,拷贝方式,0:覆盖拷贝;1:添加拷贝。实 例: !CopySaveDat(Tdb,Sdb,TabName,TimeField,0),将数据库Sdb中表TabName中的数据拷贝到数据库Tdb中,表名仍是TabName,定义的时间字段为TimeField,拷贝方式为覆盖拷贝。!DelAllSaveDat(DatName)函数意义:删除数据对象DatName对应的所有存盘数据。返 回 值:数值型,返回值=0:调用正常;0:调用不正常。参 数:DatName,数据对象名。实 例:! DelAllSaveDat(电机温度) ,删除数据对象“电机温度”对应的所有存盘数据。!DelAllAlmDat(DatName)函数意义:删除数据对象DataName对应的所有报警存盘数据。注意,此函数不能用来删除组对象所对应的报警存盘数据。返 回 值:数值型,返回值=0:调用正常;0:调用不正常。参 数:DatName:数据对象名;实 例:!DelAllAlmDat(电机温度),删除数据对象“电机温度”对应的所有报警存盘数据!DelAlmDat(DatName,Num)函数意义:删除数据对象DataName对应的报警存储数据中最早Num小时内的报警存储数据,如Num=0或DatName=空字符,则该函数无效。返 回 值:数值型,返回值=0:调用正常;0:调用不正常。参 数:DatName:数据对象名;Num:数值型时间值,单位:小时。实 例:! DelAlmDat(电机温度,1),删除数据对象“电机温度”对应的报警存盘数据中最早1小时内的数据。!DelSaveDat(DatName,Num)函数意义:删除数据对象DataName对应的存盘数据中最早Num小时内的存盘数据,如Num=0或DatName=空字符,则该函数无效。返 回 值:数值型,返回值=0:调用正常;0:调用不正常。参 数:DatName:数据对象名;Num:数值型时间值,单位:小时。实 例:! DelSaveDat(电机温度,12) ,删除数据对象“电机温度”对应的存盘数据中最早12小时内的数据。!EnableAlm(name,n)函数意义:打开/关闭数据对象的报警功能。返 回 值:数值型,返回值=0:调用正常;0:调用不正常。参 数:name,变量名;n,数值型,1表示打开报警,0表示关闭报警实 例:!EnableAlm(电机温度,1), 打开电机温度的报警功能!EnableDataSave(name,n)函数意义:打开/关闭数据对象的定时存盘功能。返 回 值:数值型,返回值=0:调用正常;0:调用不正常。参 数:name,数据对象名;n,数值型,1表示打开定时存盘,0表示关闭定时存盘实 例:!EnableDataSave(温度,1), 打开温度的定时存盘!GetAlmValue(DatName,Value,Flag)函数意义:读取数据对象DatName报警限值,只有在数据对象DatName的“允许进行报警处理”属性选项被选中后,本函数的操作才有意义。对组对象、字符型数据对象、事件型数据对象本函数无效。对数值型数据对象,用Flag来标识读取何种报警限值。返 回 值:数值型,返回值=0:调用正常;0:调用不正常。参 数:DatName:数据对象名。Value:DataName的当前的报警限值,数值型。Flag:数值型,标志要读取何种限值,具体意义如下:=1下下限报警值;=2 下限报警值;=3 上限报警值;=4 上上限报警值;=5 下偏差报警限值;=6 上偏差报警限值;=7 偏差报警基准值;实 例:! GetAlmValue(电机温度, Value, 3),读取数据对象“电机温度”的报警上限值,放入数值型数据对象Value中。!GetEventDT(EvName)函数意义:返回当前事件和上一次事件之间的时间差,单位为秒。返 回 值:数值型。返回的时间差参 数:EvName,事件变量名,事件型。实 例:!GetEventDT(EvName),取事件变量EvName当前事件和上一次事件之间的时间差,单位为秒。!GetEventP(EvName)函数意义:取到当前事件的附加说明字符串。返 回 值:字符型。返回的附加说明字符串。参 数:EvName,事件变量名,事件型。实 例:!GetEventP(EvName) ,取事件型变量EvName的当前事件的附加说明字符串。!GetEventT(EvName)函数意义:取到当前事件产生的时间,以秒为单位,相对于1980年以来的秒数。如没有事件产生,返回-1。返 回 值:数值型。参 数:EvName,事件变量名,事件型。实 例:!GetEventT(EvName),取事件型变量EvName的当前事件产生时刻。!MoveAlmDat(DatName,FileName,Num1,Num2,Flag)函数意义:把数据对象DatName所对应的报警存盘信息中的第Num1小时到Num1+Num2小时内(以当前时间为0点)的报警存盘信息提取出来,转存到FileName所指定的数据库文件中(Access数据库)。当DatName=空字符,或FileName=空字符,或Num20时,本函数无效。删除数据对象DatName对应的所有报警存储数据。返 回 值:数值型,返回值=0:调用正常;0:调用不正常。参 数:DatName:数据对象名。FileName:新的报警存盘文件名(包括路径),字符型。Num1:数值型时间量,单位:小时。本函数用Num10的一些数值来表示一些特殊意义的操作(此时Num2无效):=-1 转存当天的所有报警信息存盘数据;=-2 转存昨天的所有报警信息存盘数据;=-3 转存本星期的所有报警信息存盘数据;=-4 转存上星期的所有报警信息存盘数据;=-5 转存本月的所有报警信息存盘数据;=-6 转存上个月的所有报警信息存盘数据;Num2:数值型时间量,单位:小时。Flag:转存标志,数值型。Flag=0时,创建一个新文件(如原文件已存在,则把原文件改名为*.BK1);Flag=1时,在原有的基础上增加新的数据。实 例:!MoveAlmDat(电机温度, D:Tempttt.mdb,-6,0,1),把数据对象“电机温度”对应的报警存盘数据中的上个月的所有报警信息存盘数据转存添加到数据库文件D:Tempttt.mdb中。!MoveSaveDat(DatName,FileName,Num1,Num2,Flag)函数意义:把数据对象DatName所对应的存盘数据中的第Num1小时到Num1+Num2小时内(以当前时间为0点)的存盘数据提取出来,转存到FileName所指定的数据库文件中(Access数据库)。当DatName=空字符,或FileName=空字符,或Num20时,本函数无效。返 回 值:数值型,返回值=0:调用正常;0:调用不正常。参 数:DatName:数据对象名。FileName:新的存盘数据文件名(包括路径),字符型。Num1:数值型时间量,单位:小时。本函数用Num10的一些数值来表示一些特殊意义的操作(此时Num2无效):=-1 转存当天对应数据对象的所有存盘数据;=-2 转存昨天对应数据对象的所有存盘数据;=-3 转存本星期对应数据对象的所有存盘数据;=-4 转存上星期对应数据对象的所有存盘数据;=-5 转存本月对应数据对象的所有存盘数据;=-6 转存上个月对应数据对象的所有存盘数据;Num2:数值型时间量,单位:小时。Flag:转存标志,数值型。Flag=0时,创建一个新文件(如原文件已存在,则把原文件改名为*.BK1);Flag=1时,在原有的基础上增加新的数据。实 例:! MoveSaveDat(电机温度, D:Tempttt.mdb,-6,0,1) 把数据对象“电机温度”对应的存盘数据中的上个月的所有存盘数据转存添加到数据库文件“D:Tempttt.mdb”中。!SaveData(DatName)函数意义:把数据对象DataName对应的当前值存入存盘数据库中。本函数的操作使对应的数据对象的值存盘一次。此数据对象必须具有存盘属性,且存盘时间需设为0秒。否则会操作失败。返 回 值:数值型,=0为操作成功;0为操作失败。参 数:DatName,数据对象名。实 例:! SaveData(电机1),把组对象“电机1”的所有成员对应的当前值存盘一次。!SaveDataInit()函数意义:本操作把设置有“退出时自动保存数据对象的当前值作为初始值”属性的数据对象的当前值存入组态结果数据中作为初始值,防止突然断电而无法保存,以便MCGS下次启动时这些数据对象能自动恢复其值。返 回 值:数值型,返回值=0:调用正常;0:调用不正常。参 数:无。实 例:! SaveDataInit()!SaveDataOnTime(Time,TimeMS,DataName)函数意义:使用指定时间保存数据。本函数通常用于指定时间来保存数据,实现与通常机制不一样的存盘方法。返 回 值:数值型,返回值=0:调用正常;0:调用不正常。参 数:Time,整型,使用时间函数转换出的时间量。时间精度到秒。TimeMS,整型,指定存盘时间的毫秒数。DataName, 数据对象名。实 例:t = !TimeStr2I(“2001年2月21日3时2分3秒”)!SaveDataOnTime (t,0,DataGroup), 按照指定时间保存数据对象!SaveSingleDataInit(Name)函数意义:本操作把数据对象的当前值设置为初始值(不管该对象是否设置有“退出时自动保存数据对象的当前值作为初始值”属性),防止突然断电而无法保存,以便MCGS下次启动时这些数据对象能自动恢复其值。返 回 值:数值型,返回值=0:调用正常;0:调用不正常。参 数:Name,数据对象名。实 例:!SaveSingleDataInit(温度),把温度的当前值设置成初始值。!SetAlmValue(DatName,Value,Flag)函数意义:设置数据对象DatName对应的报警限值,只有在数据对象DatName“允许进行报警处理”的属性被选中后,本函数的操作才有意义。对组对象、字符型数据对象、事件型数据对象本函数无效。对数值型数据对象,用Flag来标识改变何种报警限值。返 回 值:数值型,返回值=0:调用正常;0:调用不正常。参 数:DatName:数据对象名。Value:新的报警值,数值型。Flag:数值型,标志要操作何种限值,具体意义如下:=1下下限报警值;=2下限报警值;=3上限报警值;=4上上限报警值;=5下偏差报警限值;=6上偏差报警限值;=7偏差报警基准值;实 例:! SetAlmValue(电机温度, 200, 3),把数据对象“电机温度”的报警上限值设为200用户登录操作函数!ChangePassword()函数意义:弹出密码修改窗口,供当前登录的用户修改密码。返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:无。实 例:!ChangePassword()!CheckUserGroup(strUserGroup)函数意义:检查当前登录的用户是否属于strUserGroup用户组的成员。返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:strUserGroup,字符型,用户组的名称。实 例:! CheckUserGroup(管理员组)!Editusers()函数意义:弹出用户管理窗口,供管理员组的操作者配置用户。返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:无。实 例:!Editusers()!EnableExitLogon(n)函数意义:打开/关闭退出时的权限检查返 回 值:无参 数:n,数值型,为1时表示在退出时进行权限检查,当权限不足时,会进行提示。为0则退出时不进行权限检查。实 例:!EnableExitLogon(1), 在退出时进行权限检查!EnableExitPrompt (n)函数意义:打开/关闭退出时的提示信息返 回 值:无参 数:n,数值型,为1时表示在退出时弹出提示信息对话框。为0则退出时不出现信息对话框。实 例:!EnableExitLogon(1), 在退出时弹出提示信息对话框!GetCurrentGroup()函数意义:读取当前登录用户的所在用户组名。返 回 值:字符型,当前登录用户组名,如没有登录返回空。参 数:无。实 例:!GetCurrentGroup()!GetCurrentUser()函数意义:读取当前登录用户的用户名。返 回 值:字符型,当前登录用户的用户名,如没有登录返回空。参 数:无。实 例:!GetCurrentUser()!LogOff()函数意义:注销当前用户。返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:无。实 例:!LogOff()!LogOn()函数意义:弹出登录对话框。返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:无。实 例:!LogOn()!GetUserNameByIndex()函数意义:按索引号取得当前用户名。返 回 值:字符型。与索引号相对应的当前用户名。参 数:索引号值。实 例:!GetUserNameByIndex(0) ,索引为0的用户名称。!GetGroupNameByIndex()函数意义:按索引号取得当前用户组名。返 回 值:字符型。与索引号相对应的当前用户组名。参 数:索引号值。实 例:!GetGroupNameByIndex(0) ,索引为0的用户组名称。!GetProjectTotalUsers ()函数意义:取得当前工程用户总数。返 回 值:开关型。当前工程用户总数。参 数:无实 例: !GetProjectTotalUsers(),激活该函数,取得当前工程的用户总数。字符串操作函数!Ascii2I(s)函数意义:返回字符串s的首字母的Ascii值。返 回 值:开关型。参 数:s, 字符型。实 例:!Ascii2I(“Afd”) =65!Bin2I(s)函数意义:把二进制字符串转换为数值。返 回 值:开关型。参 数:s, 字符型。实 例:!Bin2I(“101”) =5!Format(n,str)函数意义:格式化数值型数据对象返 回 值:字符型。参 数:n,数值型,要格式化的数值;str,字符型,格式化数值的格式。表示为0.00样式。小数点后的0的个数表示需要格式化出的小数位数。小数点前的0为一个时,表示小数点前根据实际数值显示。当小数点前没有0时,表示为.xx式样,当小数点前的0不止一个时,使用0来填充不够的位数。实 例:!Format(1.236,0.00) = 1.24;!Format(1.236,.00) = .24;!Format(1.236,00.00) = 01.24;!Hex2I(s)函数意义:把16进制字符串转换为数值。返 回 值:开关型。参 数:s, 字符型。实 例:!Hex2I (“11”) =17!I2Ascii(s)函数意义:返回指定Ascii值的字符。返 回 值:字符型。参 数:s, 开关型。实 例:!I2Ascii(65) =”A”!I2Bin(s)函数意义:把数值转换为二进制字符串。返 回 值:字符型。参 数:s,开关型。实 例:!I2Bin (5) =“101”!I2Hex(s)函数意义:把数值转换为16进制字符串。返 回 值:字符型。参 数:s,开关型。实 例:!I2Hex (17) =“11”!I2Oct(s)函数意义:把数值转换为8进制字符串。返 回 值:字符型。参 数:s,开关型。实 例:!I2Oct (9) =“11”!InStr(n,str1,str2)函数意义:查找一字符串在另一字符串中最先出现的位置返 回 值:数值型。参 数:n,数值型,开始搜索的位置;str1,字符串,被搜索的字符串;str2,字符串,要搜索的字符串实 例:!InStr(3,sdlkfjwe,we) = 7实 例:!InStr(1,wesdlkfjwe,we) = 1,表示从str1字符串的第一个字符位置搜索str2字符串,返回最先出现的位置!Lcase(str)函数意义:把字符型数据对象str的所有字符转换成小写。返 回 值:字符型。参 数:str, 字符型。实 例:!LCase(sedERT) = sedert!Left(str,n)函数意义:字符型数据对象str左边起,取n个字符。返 回 值:字符型。参 数:str:字符型,源字符串;n,数值型,取字符个数。实 例:!Left(ABCDEFG,2) =AB!Len(Str)函数意义:求字符型数据对象str的字符串长度(字符个数)。返 回 值:数值型。参 数:str, 字符型。实 例:!Len(ABCDEFG) = 7!Ltrim(str)函数意义:把字符型数据对象str中最左边的空格剔除。返 回 值:字符型。参 数:str, 字符型。实 例:!LTrim( dsfk ) = dsfk !lVal(str)函数意义:将数值类字符串转化为长整型数值返 回 值:开关型,转换出的数值。参 数:str,字符型。要求待转换的字符串为数值类字符串实 例:!lVal(“12345678”)=12345678!Mid(str,n,k)函数意义:从字符型数据对象str左边第n个字符起,取k个字符。返 回 值:字符型。参 数:str, 字符型,源字符串;n, 数值型,起始位置;k, 数值型,取字符数。实 例:!Mid(ABCDEFG,3,2) = CD!Oct2I(s)函数意义:把8进制字符串转换为数值。返 回 值:开关型。参 数:s, 字符型。实 例:!Oct2I (“11”) =9!Right(str,n)函数意义:从字符型数据对象str右边起,取n个字符。返 回 值:字符型。参 数:str,字符型,源字符串;n,数值型,取字符个数。实 例:!Right(ABCDEFG,2) =FG!Rtrim(str)函数意义:把字符型数据对象str中最右边的空格剔除。返 回 值:字符型。参 数:str, 字符型。实 例:!LTrim( dsfk ) = dsfk!Str(x)函数意义:将数值型数据对象x的值转换成字符串。返 回 值:字符型。参 数:x, 数值型。实 例:!Str(0.712) =0.712!StrComp(str1,str2)函数意义:比较字符型数据对象str1和str2是否相等,返回值为0时相等,否则不相等。不区分大小写字母。返 回 值:数值型。参 数:str1, 字符型;str2, 字符型。实 例:!StrComp(ABC,abc) = 0!StrFormat(FormatStr,任意个数变量)函数意义:格式化字符串,可以格式化任意多个数值。使用方法为!StrFormat(“%d”,23)或!StrFormat(“%g-%g-%g”,2.3,2.1,2.2)等,类似C语言中的Printf的语法。返 回 值:字符型。参 数:FormatStr,字符型,格式化字符串,如:“%d”、 “%g”。后面的参数可以任意多个。实 例:!StrFormat(%g-%g,12,12.34)= 12-12.34注 意:输出多个数值时,可以使用在多个格式化字符串之间,添加分格符的方法,区别任意个数的输出变量。如:%g-%g、%g-%g-%g。!Trim(str)函数意义:把字符型数据对象str中左右两端的空格剔除。返 回 值:字符型。参 数:str, 字符型。实 例:!Trim( dsfk ) =dsfk!Ucase(str)函数意义:把字符型数据对象str的所有字符转换成大写。返 回 值:字符型。参 数:str, 字符型。实 例:!UCase(sedERT) =SEDERT!Val(str)函数意义:把数值类字符型数据对象str的值转换成数值。返 回 值:数值型。参 数:str, 字符型。实 例:!Val(0.712) = 0.712注 意:使用表签控件显示输出时,必需设置小数位数的个数;否则系统将以四舍五入的规则,显示输出整数数值。定时器操作函数定时器号:系统定时器的序号1127,MCGS系统内嵌127个系统定时器。系统定时器以秒为定时单位。!TimerClearOutput(定时器号)函数意义: 断开定时器的数据输出连接返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:定时器号。实 例:!TimerClearOutput(1),断开1号定时器的数据输出连接!TimerRun(定时器号)函数意义:启动定时器开始工作返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:定时器号实 例:!TimerRun(1),启动1号定时器工作。!TimerStop(定时器号)函数意义:停止定时器工作返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:定时器号实 例:!TimerStop(1 ),停止1号定时器工作。!TimerSkip(定时器号,步长值)函数意义:在计时器当前时间数上加/减指定值返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:定时器号;步长值实 例:!TimerSkip(1,3),1号定时器当前值+3!TimerReset(定时器号,数值)函数意义:设置定时器的当前值,由第二个参数设定,第二个参数可以是MCGS变量返 回 值:数值型。返回值=0:调用成功;0:调用失败。 参 数:定时器号;数值实 例:!TimerReset(1,12),设置1号定时器的值为12!TimerValue(定时器号,0)函数意义:取定时器的当前值返 回 值:将定时器的值以数值型的方式输出(数值格式)参 数:定时器号实 例:Data3=!TimerValue(1,0),取定时器1的值给Data3!TimerStr(定时器号,转换类型)函数意义:以时间类字符串的形式返回当前定时器的值返 回 值:字符型变量, 将定时器的值以字符型的方式输出(时间格式)参 数:定时器号转换类型值:开关型= 0:取定时器的值以“00:00”形式输出;= 1:取定时器的值以“00:00:00”形式输出;= 2:取定时器的值以“0 00:00:00”形式输出;= 3:取定时器的值以“0 00:00:00.000”形式输出;实 例:Time=!TimerStr(1,1),取定时器的值以“00:00:00”形式输出给Time!TimerState(定时器号)函数意义:取定时器的工作状态返 回 值:数值型变量,0 - 定时器停止,1 - 定时器运行参 数:定时器号实 例:data1=!TimerState(1),取定时器1的工作状态给data1 !TimerSetLimit(定时器号,上限值,参数3)函数意义:设置定时器的最大值,即设置定时器的上限返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:定时器号;上限值;参数3,1 - 表示运行到60后停止;0 - 表示运行到60后重新循环运行实 例:!TimerSetLimit(1,60,1),设置1号定时器的上限为60,运行到60后停止。!TimerSetOutput(定时器号,数值型变量)函数意义:设置定时器的值输出连接的数值型变量返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:定时器号;数值型变量,定时器的值输出连接的数值型变量实 例:!TimerSetOutput(1,Data0),将1号定时器的数据连接到Data0!TimerWaitFor(定时器号,数值)函数意义:等待定时器工作到“数值”指定的值后,脚本程序才向下执行返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:定时器号;数值, 等待定时器工作到指定的值实 例:!TimerWaitFor(1,55),等定时器工作到55秒后再执行其他操作系统操作函数!AppActive(Title)函数意义:激活指定的应用程序。使用时一般先用!Shell函数启动指定的应用程序,然后用本函数激活应用程序,再用!SendKeys函数发送击键消息,控制应用程序的执行。返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:Title,字符型,字符串表达式,所要激活的应用程序窗口的标题。实 例:!Shell(D:OfficeExcel.exe,6)! AppActive(“Microsorft Excel Book1”) 说 明:AppActivate 语句将焦点移动到命名的应用程序或窗口,但并不影响焦点是否最大化或最小化。当用户采取行动改变焦点或将窗口关闭时,就会将焦点从活动的应用程序窗口移动出去。可用 Shell 函数启动一个应用程序并设置窗口样式。在决定激活哪个应用程序时,将 title 与每一个运行中的应用程序的标题字符串进行比较。如果没有完全匹配,就激活任何这样的应用程序,其标题字符串以 title 开头。如果以 title 命名的应用程序有很多实例,则激活任意一个实例。!Beep()函数意义:发出嗡鸣声。返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:无。实 例:!Beep()!EnableDDEConnection(DatName,n)函数意义:启动/停止数据对象的DDE连接。返 回 值:数值型。返回值=0:调用失败;0:调用成功。参 数:DatName,数据对象名;n,数值型,为1时表示启动数据对象的DDE连接。为0时则停止数据对象的DDE连接。实 例:!EnableDDEConnection(温度,1),启动数据对象“温度”的DDE连接。!EnableDDEInput(DatName,n)函数意义:启动/停止数据对象的DDE连接时外部数值的输入。返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:DatName,数据对象名;n,数值型,为1时表示启动数据对象的DDE连接,接收外部数值的输入。为0时则停止数据对象的DDE连接过程中外部数值的输入。实 例:!EnableDDEConnection(压力,1),启动数据对象“压力”的DDE连接,接收外部数值的输入。!EnableDDEOutput (DatName,n)函数意义:启动/停止数据对象的DDE连接时向外部输出数值。返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:DatName,数据对象名;n,数值型,为1时表示启动数据对象的DDE连接时向外部输出数值的功能。为0时则停止数据对象的DDE连接时向外部输出数值的功能。实 例:!EnableDDEConnection(压力,1),启动数据对象“压力”通过 DDE连接向外部输出数值的功能。!LinePrtOutput (str)函数意义:输出到行式打印机。返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:str,字符型。实 例:!LinePrtOutput (“ABCDEFG”),将字符串输出到行式打印机。!PlaySound(SndFileName,Op)函数意义:播放声音文件。返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:SndFileName,字符型,声音文件的名字。Op,开关型= 0:停止播放。= 1:同步播放,播放完毕后再返回(在播放完成之前不能进行其它的操作)。= 2:播放一遍,启动播放,立即返回。= 3:循环播放,启动循环播放后立即返回。实 例:!PlaySound(“c:ring.wav”,1)播放声音文件。!SendKeys(string)函数意义:将一个或多个按键消息发送到活动窗口,就如同在键盘上进行输入一样。返 回 值:数值型。返回值=0:调用成功;0:调用失败。参 数:string,字符串表达式,指定要发送的按键消息。实 例:!SendKeys(%F4),给当前激活的程序发送Alt+F4击键消息。说 明:每个按键由一个或多个字符表示。为了指定单一键盘字符,必须按字符本身的键。例如,为了表示字母 A,可以用 A 作为 string。为了表示多个字符,就必须在字符后面直接加上另一个字符。例如,要表示 A、B 及 C,可用 ABC 作为 string。对 SendKeys 来说,加号 (+)、插入符 ()、百分比符号 (%)、上划线 () 及圆括号 ( ) 都具有特殊意义。为了指定上述任何一个字符,要将它放在大括号 () 当中。例如,要指定正号,可用 + 表示。为了指定大括号字符,请使用 及 。为了在按下按键时指定那些不显示的字符,例如:ENTER 或 TAB 以及那些表示动作而非字符的按键,请使用下列代码:按键代码BACKSPACEBACKSPACE, BS, 或 BKSPBREAKBREAKCAPS LOCKCAPSLOCKDEL or DELETEDELETE 或 DELDOWN ARROWDOWNEND ENDENTERENTER或 ESCESCHOME HOMEINS or INSERT INSERT 或 INS- 71 -LEFT ARROWLEFTNUM LOCKNUMLOCKPAGE DOWNPGDNPAGE UPPGUPRIGHT ARROWRIGHTSCROLL LOCKSCROLLLOCKTAB TABUP ARROW UPF1F1F2F2F3F3F4F4F5F5F6F6F7F7F8F8F9
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 药物治疗了吗练习测试卷
- 养猪场租赁合同书
- 跨境电商平台运营策略及市场拓展研究
- 油茶种苗采购合同范本
- 船舶配件合同范本
- 通讯配件出售合同范本
- 复工复产培训计划
- 室内线安装合同范本
- 2025电梯设备安装合同协议书范本
- 外景拍照合同范本
- 中国农业银行笔试真题含解析
- 茶台买卖合同5篇
- 2025年新疆天泽水利投资发展有限公司招聘笔试参考题库含答案解析
- 2025年郑州卫生健康职业学院单招职业适应性测试题库含答案
- 2024年北京市中考满分作文《盘中餐》
- 冲床基础板施工方案
- 2025届高考英语应用文写作高分素材(活动报道+自然灾害新闻报道+博文写作)清单
- 《镁铝合金的腐蚀与防护》课件
- 2024年亳州利辛县第二人民医院社会招聘护理笔试真题
- 2024新外研社版英语七下单词默写表(开学版)
- 《政协委员培训材料》课件
评论
0/150
提交评论