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,实时曲线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系统软件内置实现特殊功能的程序模块,系统提供调用函数直接启动相应程序模块。某些模块为专用功能模块。
- System.runApp(“appname”)方法:(以窗口形式弹出)
System.runAppInDesk(“appname”)方法:(以标签页形式弹出)
支持模块:
TSRCurveApp : 调出TSR录波曲线模块窗口
CoffApp: 调出TSR系数计算模块窗口
DZApp: 调出TSR定值管理模块窗口
ConfigApp:调出815专用配置模块窗口
TSAEleAnalyse:调出815专用频域分析模块窗口
DampApp:调出815专用阻尼计算模块窗口
HisCurveApp: 调出内置历史曲线程序窗口,可选参数点变量;
TrendCurveApp:调出内置实时曲线程序窗口,可选参数点变量;
PointInfoApp: 调出内置点信息程序窗口,可选参数点变量;
- 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对象还包括许多专门用于执行简单的或复杂的数学计算的方法,包括:
- max()
判断一组数中的最大值,可以接受任意多个参数
举例:var iMax=Math.max(3,54,32,16)
alert(iMax); //outputs”54”
- min()
判断一组数中的最小值,可以接受任意多个参数
举例:var iMin=Math.min(3,54,32,16)
alert(iMin); //outputs”3”
- abs()
返回数字的绝对值
举例:var iNegOne=Math.abs(-1)
alert(iNegOne); //outputs”1”
- ceil()
向上舍入函数,总是把数字向上舍入到最接近的数值
举例:alert(Math.ceil(25.5)); //outputs”26”
- floor
向下舍入函数,总是把数字向下舍入到最接近的数值
举例:alert(Math.floor(25.5)); //outputs”25”
- round()
标准的舍入函数,遵循四舍五入原则
举例:alert(Math. round (25.5)); //outputs”26”
- exp()
把Math.E上升到指定的幂
举例:alert(Math. exp (2)); // outputs “e2”
- log()
判断Math.E的多少次指数才等于指定的值
举例:alert(Math. log (e)); // outputs “1”
- pow()
把数字升到指定的幂,与exp()方法功能类似
举例:var iNum= Math. pow (2,10)
alert(iNum); //outputs “210”
- sqrt()
返回指定数字的平方根
举例:var iNum= Math. sqrt (4)
alert(iNum); //outputs “2”
- 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)
- 三角函数方法
acos(x) 返回x的反余弦值
asin(x) 返回x的反正弦值
atan(x) 返回x的反正切值
atan2(y,x) 返回y/x的反余弦值
cos(x) 返回x的余弦值
sin(x) 返回x的正弦值
tan(x) 返回x的正切值