12.3脚本函数

CyberControl系统软件完全支持JavaScript脚本语言规范,系统除支持JavaScript语言的内置对象的所有方法函数外,CyberControl软件作为java的独立对象System,内置了功能强大的系统对象函数,为用户完成更为复杂的组态效果提供平台和工具。所有脚本可以在界面组态系统中的属性页-事件和全局函数,启动函数,退出函数等地方直接使用,系统函数引用时需要调用系统对象System。

首先注意:.

-- 所有语句和参数区分大小写.

-- 可以使用/ 注释内容 /为每个语句添加注释

12.3.1系统函数

系统对象System下的函数方法:

Beep

语法:void Beep(int iNum)

参数:iNum,发声次数

返回值:

备注说明:使PC发声

示例:System.Beep(3)

checkRight

语法:boolean checkRight(int right)

参数:right,要检查的权限定义的ID

返回值:布尔量0或1

备注说明:检查当前用户是否具备某项权限

示例:System.checkRight(1)

checkSubject

语法:boolean checkSubject(int subid)

参数:subid,要检查的专业定义的ID

返回值:布尔量0或1

备注说明:检查当前用户是否具备对某个专业内设备的访问许可

示例:System.checkSubject(1);

checkArea

语法:boolean checkSArea(int areaid)

参数:areaid,要检查的责任区域定义的ID

返回值:布尔量0或1

备注说明:检查当前用户是否具备对某个责任区域的访问许可

示例:System.checkArea(1);

changePassword

语法:boolean changePassword()

参数:无

返回值:布尔量0或1

备注说明:修改当前用户密码,弹出密码修改对话框

示例:System.changePassword()

changeGroup

语法:boolean changeGroup()

参数:无

返回值:布尔量0或1

备注说明:切换当前用户的用户组

示例:System. changeGroup()

closeAllGraph

语法:void closeAllGraph(int type)

参数:type,0=关闭所有画面和应用窗口,1=只关闭画面窗口,2=只关闭应用窗口

返回值:无

备注说明:关闭所有窗口

示例:System. closeAllGraph (0)

closeCurrentFrame

语法:void closeCurrentFrame()

参数:无

返回值:无

备注说明:关闭当前画面

示例:System. closeCurrentFrame()

closeCurrentFrame

语法:void closeCurrentFrame(int screen)

参数:screen,屏幕号,从0开始

返回值:无

备注说明:关闭指定屏幕上的当前画面,用于多屏幕显示情况。

示例:System. closeCurrentFrame (0)

closeGraph

语法:void closeGraph (String strGraphName)

参数:strGraphName,窗口名称

返回值:无

备注说明:关闭指定窗口画面

示例:System. closeGraph (“/锅炉/主汽系统.drw”)

closeGraph

语法:void closeGraph (String strGraphName, int screen)

参数:strGraphName,窗口名称;

screen,屏幕号,从0开始

返回值:无

备注说明:关闭指定屏幕上的指定窗口画面,用于多屏幕显示情况。

示例:System. closeGraph (“/锅炉/主汽系统.drw”,0)

clearManset()

语法:void clearManset(int dpu_id)

参数:dpu_id,控制器ID32号

返回值:无

备注说明:清除某个控制器的遥测/遥信人工置数,如果dpu_id为0,则代表所有的控制器

示例:System. clearManset(0)

clearDigitManset()

语法:void clearDigitManset(int dpu_id)

参数:dpu_id,控制器ID32号

返回值:无

备注说明:清除某个控制器的遥信人工置数,如果dpu_id为0,则代表所有的控制器

示例:System. clearDigitManset (0)

clearAnalogManset()

语法:void clearAnalogManset(int dpu_id)

参数:dpu_id,控制器ID32号

返回值:无

备注说明:清除某个控制器的遥测人工置数,如果dpu_id为0,则代表所有的控制器

示例:System. clearAnalogManset (0)

ConfirmDialog

语法:int ConfirmDialog(String title, String strInfo)

参数:title,对话框标题

StrInfo,对话框提示信息

返回值:无

备注说明:弹出系统确认对话框

示例:System.ConfirmDialog(“确认”,”设置成功!”);

ConfirmAlarm

语法:void ConfirmAlarm()

参数:无

返回值:无

备注说明:确认报警

示例:System.ConfirmAlarm();

command

语法:string command(String filename, String para)

参数:filename,外部exe文件的全路径名;

para,程序的运行参数(可选)

返回值:-1:程序正常关闭,其它按程序设计返回

备注说明:执行一个外部exe 程序,并阻塞等待程序关闭返回值

示例:System. command (“C:\WINDOWS*.exe”,1)

currentTime

语法:long currentTime()

参数:无

返回值:long类型时间值

备注说明:返回系统当前系统时间值long类型,即当前已逝去的毫秒数;

示例:var time = System. currentTime ()

exitSystem

语法:void exitSystem()

参数:无

返回值:无

备注说明:退出系统运行状态

示例:System. exitSystem ()

Execute

语法:void Execute(String filename, String para)

参数:filename,外部exe文件的全路径名;

para,程序的运行参数(可选)

返回值:无

备注说明:执行一个外部exe 程序

示例:System. Execute (“C:\WINDOWS*.exe”,1)

ExecuteCommand

语法:void ExecuteCommand(String command, String para)

参数:command,外部命令,与Execute函数的区别在于command可不用写全路径名,只要是在PATH环境中能找到的执行程序都可以;

para,程序的运行参数(可选)

返回值:无

备注说明:执行一个外部命令

示例:System. ExecuteCommand (“stopall”,1)

getScreens

语法:int getScreens()

参数:无

返回值:屏幕个数

备注说明:得到多屏幕显示视口的屏幕数

示例:System. getScreens()

get

语法:object get(String strVar)

参数:strVar,变量名称

返回值:系统变量工程值

备注说明:获取系统中变量的工程值

示例:System. get (“DI$DO_1_1_0$iValue”)

GetTime

语法:float GetTime()

参数:无

返回值:操作系统当前的日期时间

备注说明:

示例:System. GetTime ()

GetTimeItem

语法:float GetTimeItem(float time, int itemid)

参数:float time,系统时间

Int itemid,时间项的ID号

返回值:操作系统当前的日期时间的某一项

备注说明: ID号依次为:1-年;2-月;3-日;4-时;5-分;6-秒;7-毫秒

示例:var time=System.GetTime();

var item=System. GetTimeItem (time,1)

getSystemInfo

语法:string getSystemInfo()

参数:无

返回值:CyberControl软件的版本信息

备注说明:

示例:var version=System.getSystemInfo();

System.InfoBox("getSystemInfo",version,1 )

getDeviceInfo

语法:string getDivceInfo(int dpuid)

参数:int dpuid,控制器表中的控制器ID号

返回值:控制器和IO板卡的版本信息

备注说明: 0-默认所有控制器

示例:var version=System.getDeviceInfo(0);

System.InfoBox("getDeviceInfo",version,1 )

getIOInfo

语法:string getIOInfo(int dpuid , arrary ioaddr)

参数:int dpuid,控制器表中的控制器ID号

arrary ioaddr,板卡逻辑地址所组成的数组

返回值:某控制器下某些IO板卡的版本信息

备注说明: 0-默认所有控制器

示例:var version=System.getIOInfo(1,[1,2,3,4]);

System.InfoBox("getIOInfo", version,-1 )

getDeviceName

语法:string getDeviceName(int point_type,int point_id,int device_type)

参数:point_type,数据库点类型:0=模拟量(遥测),1=数字量(遥信),2=电度量, 3遥控量, 4=遥调量

point_id,数据库点ID号

device_type,返回数据库点所属位置,0为所属DPU ,1为所属IO装置

返回值:控制器表或IO装置表的描述

备注说明:获取数据库点所属控制器或所属IO装置(控制器表或IO装置表的描述)

示例:var deviceName=System. getDeviceName (1,1035667,1);

System.InfoBox("getDeviceName ", deviceName,1 )

getConfig

语法:

String setConfig(String entry,String key,String configFile,boolean isProjectBase)

参数:String entry,配置文件中配置节点项

String key:配置文件中配置项关键字

String configFile:配置文件所在路径

boolean isProjectBase:配置文件所在路径是否属于当前工程根目录下的Config目录。

返回值: 配置文件中配置项关键字的值

备注说明:获取系统配置文件中配置项关键字的值。

示例:System.getConfig("filepath","path","config/TSAFatCalc.ini",false)

getProjectName

语法:string getProjectName()

参数:无

返回值:当前工程名称

备注说明:获取当前工程的名称

示例:var name= System. getProjectName()

InfoBox

语法:void InfoBox(String title, String strInfo, int icon_flag)

参数:title,对话框标题

StrInfo,对话框提示信息

icon_flag,图标类型,0=错误消息 1=信息消息 2=告警消息 3=提问消息 -1=无图标

返回值:无

备注说明:系统信息对话框

示例:System. InfoBox (“信息对话框”, “系统已经启动!”,1)

InputBox

语法:void InputBox(Strinfo, initValue)

参数:Strinfo,输入框提示信息

initValue,输入框显示初值

返回值:输入字符串

备注说明:系统默认提供的字符输入窗口

示例:System. InputBox (“请输入正确名称”, “a”)

isGlobalDisableState

语法:boolean isGlobalDisableState()

参数:无

返回值:0,具备下发系统控制信息的权限 1,不具备下发系统控制信息的权限

备注说明:判断当前系统是具有下发系统控制信息的权限

示例:System. isGlobalDisableState()

isLogin

语法:boolean isLogin()

参数:无

返回值:0,无用户登录 1,有用户登录

备注说明:判断当前系统是否有用户登录

示例:System. isLogin ()

login

语法:int login()

参数:无

返回值:如果登录成功,返回登录的用户ID,如果未登录,返回0

备注说明:调出用户登录窗口

示例:System. login ()

login

语法:int login(String operation)

参数:String operation,操作内容的描述,可选,为空时为调出登录窗口

返回值:如果登录成功,返回登录的用户ID,如果未登录,返回0

备注说明:调出用户自定义操作窗口

示例:System. login (“确认投入压板?”)

lockScreen

语法:int lockScreen()

参数:无

返回值:无

备注说明:运行态锁定画面的控制权,只能浏览,不能控制

示例:System. lockScreen()

unlockScreen

语法:int unlockScreen()

参数:无

返回值:无

备注说明:解除运行态画面锁定,弹出密码框,需要验证锁定用户的密码

示例:System. unlockScreen()

isLocked()

语法:int isLocked()

参数:无

返回值:1=处于锁定状态,0=未锁定状态

备注说明:判断系统运行态时画面是否处于未锁定状态

示例:System.isLocked()

logout

语法:int logout()

参数:无

返回值:无

备注说明:调出用户注销窗口

示例:System. logout ()

logoutEx

语法:int logoutEx()

参数:无

返回值:0=注销成功,-1=取消,1=切换登录用户ID

备注说明:调出用户注销切换窗口

示例:var ret=System. logout Ex()

MessageBox

语法:int MessageBox(String title, String strInfo, int icon_flag)

参数:title,对话框标题

StrInfo,对话框提示信息

icon_flag,图标类型,0=错误消息 1=信息消息 2=告警消息 3=提问消息 -1=无图标

返回值:1,确认 0,取消

备注说明:系统消息对话框

示例:System. MessageBox (“消息对话框”, “系统已经启动!”,1)

MessageBoxEx

语法:int MessageBoxEx(String title, String strInfo, int icon_flag,String tip_ok,String tip_cancel)

参数:title,对话框标题

StrInfo,对话框提示信息

icon_flag,图标类型,0=错误消息 1=信息消息 2=告警消息 3=提问消息 -1=无图标

tip_ok,确认按钮上的显示文字

tip_cancel,取消按钮上的显示文字

返回值:0,关闭 1,确认 2,取消

备注说明:系统自定义对话框

示例:System. MessageBoxEx (“选择”, “请选择通道入口?”,1,”信道0”,”信道1”)

nextFrame

语法:void nextFrame()

参数:无

返回值:无

备注说明:切换到下一个窗口画面,系统按照窗口打开顺序存储若干操作记录,并可通过此函数直接打开下一个窗口

示例:System. nextFrame()

nextFrame

语法:void nextFrame(int screen)

参数:screen,屏幕号,从0开始

返回值:无

备注说明:切换到指定屏幕上的下一个窗口画面,统按照窗口打开顺序存储若干操作记录,并可通过此函数直接打开下一个窗口

示例:System. nextFrame(0)

openGraph

语法:void openGraph (String strGraphName)

参数:strGraphName,窗口名称

返回值:无

备注说明:打开指定窗口画面

示例:System. openGraph (“/锅炉/主汽系统.drw”)

openGraph

语法:void openGraph (String strGraphName, int screen)

参数:strGraphName,窗口名称;

screen,屏幕号,从0开始

返回值:无

备注说明:在指定屏幕上打开指定的窗口画面,用于多屏幕显示情况。

示例:System.openGraph (“/锅炉/主汽系统.drw”,0)

openGraphNoWait

语法:void openGraph (String strGraphName, int screen)

参数:strGraphName,窗口名称;

screen,屏幕号,从0开始

返回值:无

备注说明:1.注意所写参数必须是完整的画面相对路径,不要忘记前面“/”

2.第二个参数可选,无时显示在当前屏幕

示例:System.openGraph (“/锅炉/主汽系统.drw”,0)

openModule

语法:void openModule (String strModuleName)

参数:strModuleName,模块名称

返回值:无

备注说明:该函数仅对ECS工程有效,用于在ECS运行主题中打开应用模块,目前支持的模块包括:GRAPH,REPORT,RTDBVIEW,EVENTVIEW,LOGVIEW,DZ,LB,PDR

示例:System. openModule (“GRAPH”)

createObject()

语法:void createObject(string strObjectName)

参数:strObjectName,对象名称

返回值:无

备注说明:创建系统内置对象

示例:System. createObject(“”)

previousFrame

语法:void previousFrame()

参数:无

返回值:无

备注说明:切换到上一个窗口画面,系统按照窗口打开顺序存储若干操作记录,并可通过此函数直接打开上一个窗口

示例:System. previousFrame()

previousFrame

语法:void previousFrame(int screen)

参数:screen,屏幕号,从0开始

返回值:无

备注说明:切换到指定屏幕上的上一个窗口画面,系统按照窗口打开顺序存储若干操作记录,并可通过此函数直接打开上一个窗口

示例:System. previousFrame(0)

playSound

语法:void playSound(string waveFile)

参数:waveFile 声音文件

返回值:无

备注说明:播放指定目录下的*.wav格式声音文件

示例:System. playSound (“D:/wav/alarm.wav”)

playSound

语法:void playSound(string text,boolean isMale)

参数:text 字符型指定文字内容,isMale 布尔型发生性别 true:男声 false:女声

返回值:无

备注说明:系统声音播放指定文字内容

示例:System. playSound (“播放声音”,true)

pulse

语法:void pulse(strVar,boolean type,int iMillisecond)

参数:strVar 变量名称,

type脉冲类型:1=上升沿优先,0=下降沿优先

iMillisecond 脉冲宽度毫秒数

返回值:无

备注说明:以发送脉冲方式设置系统中变量的工程值,脉冲宽度毫秒。在脉冲发送期间代码阻塞。

示例:System.pulse("DI$IVALUE$iVal",1,500)

pulseNB

语法:void pulseNB(strVar,boolean type,int iMillisecond)

参数:strVar 变量名称,

type脉冲类型:1=上升沿优先,0=下降沿优先

iMillisecond 脉冲宽度毫秒数

返回值:无

备注说明:以发送脉冲方式设置系统中变量的工程值,脉冲宽度毫秒。与pulse函数不同在于此函数不阻塞下一行代码的执行。

示例:System.pulseNB("DI$IVALUE$iVal",1,500)

sleep

语法:void sleep(int iMillisecond)

参数:iMillisecond,延迟的毫秒数

返回值:无

备注说明:延迟程序执行时间

示例:System.sleep(1000)

set

语法:void set(String strVar, Object value)

参数:strVar,变量名称

value,变量值

返回值:无

备注说明:设置系统中变量的工程值,系统将为通讯程序发送相应消息,但不改变实时库中该点的工程值,并且系统自动存储操作记录。

示例:System. set (“iValue”,100)

setManual

语法:void setManual(String strVar, Object value)

参数:strVar,变量名称

value,变量值

返回值:无

备注说明:设置系统中变量的工程值实时更改数据库中该点的工程值,但系统不为通讯程序发送相应消息,且不存储操作记录。

示例:System. setManual (“iValue”,100)

setEx

语法:void setEx(String strVar, Object value)

参数:strVar,变量名称

value,变量值

返回值:无

备注说明:设置系统中变量的工程值,系统将判断设定值是否有效后向通讯程序发送相应消息,但不改变实时库中该点的工程值,自动存储操作记录。

示例:System. setEx (“iValue”,100)

setNoLog

语法:void setNoLog(String strVar, Object value)

参数:strVar,变量名称

value,变量值

返回值:无

备注说明:设置系统中变量的工程值,系统将为通讯程序发送相应消息,并且改变实时库中该点的工程值,不存储操作记录。

示例:System. setEx (“iValue”,100)

syncresource

语法:object syncresoutce(string strFileName)

参数:strFileName,被同步的资源路径

返回值:网络版时全网同步资源

备注说明:同步CyberControl平台及工程资源到全网节点,被同步资源限于CyberControl系统HMI目录下的内容,路径参数为HMI目录后的路径

示例; System. Syncresoutce(“/project/projectName/graph/图形资源/graph1.drw”)

SetCMTime

语法:void SetCMTime()

参数:

返回值:无

备注说明:设置CSC800系列控制器的时间

示例:System.SetCMTime();

SelectFile

语法:String SelectFile(String srcDir, String suffix)

参数:srcDir,文件起始路径

suffix:文件名后缀类型

返回值:选择文件的全路径,或者为空

备注说明:选择指定路径下的文件

示例:System.SelectFile(“C:/WINDOWS/”,”dll”)

setConfig

语法:

void setConfig(String entry,String key,String value,String configFile,boolean isProjectBase)

参数:String entry,配置文件中配置节点项

String key:配置文件中配置项关键字

String value:配置文件中配置项关键字的具体参数值

String configFile:配置文件所在路径

boolean isProjectBase:配置文件所在路径是否属于当前工程根目录下的Config目录。

返回值: 无

备注说明:设置系统配置文件。

示例:System.setConfig("filepath","path",”selPath","config/TSAFatCalc.ini",false)

softKeyboard

语法:void softKeyboard()

参数:无

返回值:无

备注说明:启动系统软键盘

示例:System. softKeyboard()

showMessage

语法:showMessage(String message)

参数:message,信息内容

返回值:无

备注说明:弹出消息型对话框,该类型对话框不阻塞进程,不影响程序继续执行

示例:System. showMessage (“message test!”)

showAlarm

语法:showAlarm(bool isShow)

参数:isShow,显示/关闭

返回值:无

备注说明:控制系统实时报警窗口显示或关闭

示例:System. showAlarm (true);

showSCLog

语法:showSCLog()

参数:无

返回值:无

备注说明:调用系统内置顺控日志查询窗口,轨道交通专业应用。

示例:System. showSCLog ()

showPDR

语法:showPDR()

参数:无

返回值:无

备注说明:调用系统内置事故反演窗口。

示例:System. showPDR ()

SystemAlarm

语法:SystemAlarm(int dpuid,String alarm_info,int alarm ID)

参数:int ID,报警信息所属DPU的ID号(可选);

String alarm_info,报警内容(必选)

Int alarm ID,本条报警记录所属的报警级别ID号(可选)

返回值:无

备注说明:触发一个系统报警,在报警窗内显示。三个参数可以选择

示例:System. SystemAlarm (1,“紧急报警 装置掉电”,1)

setGlobalNormalState

语法:setGlobalNormalState ()

参数:无

返回值:无

备注说明:设置CyberControl系统控制消息下发权限

示例:System.setGlobalNormalState()

setGlobalDisableState

语法:setGlobalDisableState ()

参数:无

返回值:无

备注说明:取消CyberControl系统控制消息下发权限

示例:System. setGlobalDisableState ()

setLayout

语法:setLayout(String layoutName,int index)

参数:String layoutName,布局名称,

int index,设置第几个屏幕的布局,从0开始

返回值:无

备注说明:运行态设置布局

示例:System. setLayout (“布局1”,0)

stopAlarmSound

语法:stopAlarmSound()

参数:无

返回值:无

备注说明:停止报警声音

示例:System. stopAlarmSound()

stopCommand

语法:stopcommand (String command)

参数:command,进程的.exe名称

返回值:无

备注说明:停止某个应用进程

示例:System. stopcommand (“OnetAppd.exe”)

showVersionInfo

语法:string showVersionInfo ()

参数:无

返回值:CyberControl系统软件的版本信息

备注说明:

示例:System. showVersionInfo ()

saveData

语法:saveData()

参数:无

返回值:无

备注说明:存储数据库

示例:System. saveData()

testSound

语法:void testSound()

参数:无

返回值:无

备注说明:测试音响

示例:System. testSound ()

writeLog

语法:void writeLog(int dpuid,String object,String content)

参数:dpuid,日志写入时所属DPU的ID号

object,操作对象

Content,操作内容

返回值:无

备注说明:记录一条日志信息,可以在操作历史事件中查询

示例:System. writeLog (1,“主接线开关”, “合操作”)

runApp

语法:void runApp(string appname,object parameter)

参数:appname,应用名称 parameter应用参数

返回值:无

备注说明:调用系统内置应用,以应用窗口方式显示。系统内置应用有:”TSRCurveApp”,”CoffApp”,”DZApp”,”HisCurveApp”,”TrendCurveApp”,”PointInfoApp”,第二个参数可为空

示例:System. runApp(“HisCurveApp”,””)

runAppDesk

语法:void runAppDesk(string appname,object parameter)

参数:appname,应用名称 parameter应用参数

返回值:无

备注说明:调用系统内置应用,以嵌入图形显示。系统内置应用有:”TSRCurveApp”,”CoffApp”,”DZApp”,”HisCurveApp”,”TrendCurveApp”,”PointInfoApp”,第二个参数可为空

示例:System. runAppDesk(“HisCurveApp”,””)

12.3.2控件函数

Windows控件对象的函数方法:

getSelectIndex

语法:int object.getSelectIndex()

参数:无

返回值:下拉框已选择的成员ID

备注说明:返回下拉框已选择项的ID,从0开始

示例:commbox.getSelectIndex()

getSelectValue

语法: object.getSelectValue()

参数:无

返回值:下拉框或列表框选择的数据值

备注说明:方法只适用于绑定了模拟量数据集的下拉框或列表框,将根据关联的字段获得返回值的类型和值

示例:commbox.getSelectValue()

getSelectText

语法:string object.getSelectText()

参数:无

返回值:下拉框选项的内容

备注说明:返回下拉框选择项的内容,结果为字符串

示例:commbox.getSelectText()

setSelectedIndex

语法: object.setSelectedIndex(index)

参数:int index 下拉框选项序号,由0开始;

返回值:无

备注说明: 设置下拉框/列表框的被选择项。调用方法特殊,请参考示例。

示例:commbox.GetComp().setSelectedIndex(2); “commbox”为用户已定义的控件名称

addItem

语法:object. addItem(String Item)

参数:String Item,选项内容

返回值:无

备注说明:添加指定内容项到下拉框或者列表框中

示例:commbox. addItem(“选项一”)

listbox.addItem(“选项一”)

deleteItem

语法:object.deleteItem(int Index)

参数:int Index,所要删除的下拉框(列表框)中成员项的ID号

返回值:无

备注说明:删除下拉框(列表框)中某一成员项,成员项的ID号从0开始

示例:commbox. deleteItem (1)

clear

语法:object.clear()

参数:无

返回值:无

备注说明:删除下拉框(列表框)中所有项

示例:commbox. clear ()

Load

语法: object.Load(String srcDir )

参数:String srcDir,文件地址

返回值:无

备注说明:设置下拉框(列表框)中显示指定文本文件的内容(该文本文件必须为CyberControl系统Save函数保存的指定格式)

示例:commbox.Load(“C:/Document/111.txt”)

Save

语法: object.Save(String srcDir )

参数:String srcDir,文件地址

返回值:无

备注说明:保存下拉框(列表框)中的内容到指定文本文件。

示例:commbox.Save(“C:/Document/111.txt”)

getText

语法:string object.getText()

参数:无

返回值:文本框的当前内容

备注说明:返回文本框的内容,结果为字符串型

示例:text.getText()

setText

语法:object.setText(string item)

参数:string item,需要设置到文本框的内容

返回值:无

备注说明:设置文本框的内容为指定的字符串

示例:text.setText(“this is a textbox”)

TextLoad

语法:object.TextLoad(String srcDir )

参数:String srcDir,文件地址

返回值:无

备注说明:设置文本框中显示指定文本文件的内容

示例:text.TextLoad(“C:/Document/111.txt”)

TextSave

语法:object.TexSave(String srcDir )

参数:String srcDir,文件地址

返回值:无

备注说明:保存文本框中的内容到指定的文本文件

示例:text.TextSave(“C:/Document/111.txt”)

getCheck

语法:boolean object.getCheck()

参数:无

返回值:1,当前复选框处于选中状态;0,当前复选框处于未选中状态

备注说明: 获取复选框是否选中状态

示例:check.getCheck()

setCheck

语法:object.setCheck(boolean CheckFlag)

参数:boolean CheckFlag,复选框选中标记

返回值:无

备注说明:设置复选框的选中标记,CheckFlag=1,选中;CheckFlag=0,取消

示例:check.setCheck(1)

12.3.3组件函数

  1. 实时曲线组件对象的函数方法:

说明:此脚本可以操作实时曲线1,实时曲线2,实时曲线3类型的组件。

使用步骤:

1)绘制曲线组件,并选中此组件的“允许通过脚本控制”选项。

2)通过事件调用如下几个函数:

a) setVar(“ 变量” )

b) setVar( 颜色索引,”变量” )

c) setVar( “变量”,最小值, 最大值)

d) setVar(颜色索引,”变量”,最小值, 最大值)

其中颜色索引取值如下:

0Color.WHITE

1Color.LIGHT_GRAY,

2Color.GRAY

3Color.DARK_GRAY,

4Color.BLACK,

5Color.RED,

6Color.PINK,

7Color.ORANGE,

8Color.YELLOW,

9Color.GREEN,

10Color.MAGENTA,

11Color.CYAN,

12Color.BLUE

举例:

实时曲线组件对象名称为trend

trend.setVar("AI$AI_1_0_0$fVal");

trend.setVar(5,"AI$AI_1_0_0$fVal");

trend.setVar("AI$AI_1_0_0$fVal",0,100);

trend.setVar(5,"AI$AI_1_0_0$fVal",0,100);

12.3.4模块调用

CyberControl系统软件内置实现特殊功能的程序模块,系统提供调用函数直接启动相应程序模块。某些模块为专用功能模块。

  1. System.runApp(“appname”)方法:(以窗口形式弹出)

System.runAppInDesk(“appname”)方法:(以标签页形式弹出)

支持模块:

TSRCurveApp : 调出TSR录波曲线模块窗口

CoffApp: 调出TSR系数计算模块窗口

DZApp: 调出TSR定值管理模块窗口

ConfigApp:调出815专用配置模块窗口

TSAEleAnalyse:调出815专用频域分析模块窗口

DampApp:调出815专用阻尼计算模块窗口

HisCurveApp: 调出内置历史曲线程序窗口,可选参数点变量;

TrendCurveApp:调出内置实时曲线程序窗口,可选参数点变量;

PointInfoApp: 调出内置点信息程序窗口,可选参数点变量;

  1. System.openModule(“modulename”)方法:

GRAPH:ECS专用图形列表窗口;

REPORT:ECS专用图形报表浏览窗口;

RTDBVIEW:ECS专用实时库浏览窗口;

EVENTVIEW:ECS专用事件查询窗口;

LOGVIEW:ECS专用日志查询窗口;

DZ:ECS专用定值管理窗口;

LB:ECS专用录波管理窗口;

PDR:PDR反演窗口;

12.3.5 Math函数

Math对象是在高中数学课就学过的内置对象。它知道解决最复杂的数学问题的所有公式,如果给它要处理的数字,即能计算出结果。

Math对象有几个属性,主要是数学界的专用值,包括:

属性 说明
E 值e,自然对数的底
LN10 10的自然对数
LN2 2的自然对数
LOG2E 以2为底e的对数
LOG10E 以10为底e的对数
PI 值π
SQRT1_2 1/2的平方根
SQRT2 2的平方根

Math对象还包括许多专门用于执行简单的或复杂的数学计算的方法,包括:

  1. max()

判断一组数中的最大值,可以接受任意多个参数

举例:var iMax=Math.max(3,54,32,16)

alert(iMax); //outputs”54”

  1. min()

判断一组数中的最小值,可以接受任意多个参数

举例:var iMin=Math.min(3,54,32,16)

alert(iMin); //outputs”3”

  1. abs()

返回数字的绝对值

举例:var iNegOne=Math.abs(-1)

alert(iNegOne); //outputs”1”

  1. ceil()

向上舍入函数,总是把数字向上舍入到最接近的数值

举例:alert(Math.ceil(25.5)); //outputs”26”

  1. floor

向下舍入函数,总是把数字向下舍入到最接近的数值

举例:alert(Math.floor(25.5)); //outputs”25”

  1. round()

标准的舍入函数,遵循四舍五入原则

举例:alert(Math. round (25.5)); //outputs”26”

  1. exp()

把Math.E上升到指定的幂

举例:alert(Math. exp (2)); // outputs “e2”

  1. log()

判断Math.E的多少次指数才等于指定的值

举例:alert(Math. log (e)); // outputs “1”

  1. pow()

把数字升到指定的幂,与exp()方法功能类似

举例:var iNum= Math. pow (2,10)

alert(iNum); //outputs “210”

  1. sqrt()

返回指定数字的平方根

举例:var iNum= Math. sqrt (4)

alert(iNum); //outputs “2

  1. random()

返回一个0到1之间的随机数,不包括0和1。可以使用下面的方法在某个范围内选择随机数:

number=Math.floor(Math.random()*total_number_of_choices+first_possible_value)

因为random()返回的都是小数值,也就是说,用它乘以一个整数,然后再加上一个数,得到的仍然是小数值。通常你想选择一个随机整数值,因此必须搭配使用floor方法。

举例:想要选择一个1-10之间的随机数

var iNum= Math.floor(Math.random()*10+1)

  1. 三角函数方法

acos(x) 返回x的反余弦值

asin(x) 返回x的反正弦值

atan(x) 返回x的反正切值

atan2(y,x) 返回y/x的反余弦值

cos(x) 返回x的余弦值

sin(x) 返回x的正弦值

tan(x) 返回x的正切值

results matching ""

    No results matching ""