历史曲线控件使用方法
? 标记时间(X)轴:“标记数目”编辑框中定义时间轴上的标记的个数。
通过选择“格式”或的选项,选择时间轴显示的时间的格式及内容。“时
间长度”编辑框定义初始显示时图表所显示的时间段的长度。单击“字体”按钮,弹出字体、字型、字号选择对话框,选择数值轴标记的字体及颜色等。
所有项定义完成后,单击“确定”返回。
3、设置控件的动画连接属性
以上所述为设置控件的固有属性,要在组态王中使用该控件,还需设置控件的动画连接属性。
用鼠标选中并双击该控件,弹出“动画连接属性”设置对话框,如图7所示。
图7 设置控件动画连接属性
动画连接属性共有3个属性页,下面一一介绍: “常规”属性页:如图7所示。
? 控件名:定义该控件在组态王中的标识名,如“历史曲线”,该标识名在组态王当前工程中应该唯一。
? 优先级、安全区:定义控件的安全性,单击“安全区选择”按钮选择所需安全区。
“属性”属性页:如图8所示。
北京亚控科技发展有限公司
历史曲线控件使用方法
图8 “属性”属性页
定义控件的属性与组态王的变量的关联。 “事件”属性页:如图9所示。
图9 事件属性页
定义控件的事件函数。
以上控件的各个动画连接属性的定义请参见《组态王6.0使用手册》第十五章 “控件”。这里不在详细描述。
4、控件属性、方法列表
4.1 控件属性列表
序号 1 2 3 4 名 称 CurveUseKVHistData CruveDSN CurveTable CurveDateTimeField 数据类型 Long Long Long Long 含 义 使用组态王历史数据 使用数据源名称 数据库的表名 数据库的时间字段名 北京亚控科技发展有限公司
历史曲线控件使用方法
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 CurveInvalidColor CurveVarName CurveColor CurveLineType CurveTimeDelay CurveDrawType CurveAlmColor CurveHideCurve CurveMilliSecondField CurveDataField CuryeInvalidValue CurveUser CurvePwd CurveSavePwd CurveList CtrlBtn BorderColor BakColor DrawXYAxis AxisLineType AxisColor ShortDivLine MajXDivNum MinXDivNum MajYDivNum MinYDivNum MajXDivLineType MinXDivLineType MajYDivLineType MinYDivLineType MajXDivColor MinXDivColor MajXDivColor MinYDivColor YLabelNum YMinVal YMaxVaL YLableFont XLabelNum XWidth XLableFont XLabelFmtYear XlabelFmtMonth Long Long Long Long Long Long Long Long Long Long Long Long Long Long Bool Bool 数据库的无效值 连接变量名 曲线颜色 曲线线形 曲线比较 曲线绘制方式 报警显示颜色 是否隐藏曲线 毫秒字段 数据字段 无效值字段 用户名 密码 确认密码 是否显示曲线列表 是否显示控制按钮 OLE_COLOR 边界颜色 OLE_COLOR 背景颜色 是否绘制坐标轴 Bool 坐标轴线型 OLE_COLOR 坐标轴颜色 分割线是否为短线 Bool Long Long Long Long Long Long Long Long Long X轴主分割线数 X轴副分割线数 Y轴主分割线数 Y轴副分割线数 X轴主分割线线型 X轴副分割线线型 Y轴主分割线线型 Y轴副分割线线型 OLE_COLOR X轴主分割线颜色 OLE_COLOR X轴副分割线颜色 OLE_COLOR Y轴主分割线颜色 OLE_COLOR Y轴副分割线颜色 Long Float Float IFontDisp Long Long IFontDisp Bool Bool Y轴标记数 Y轴标记最小值 Y轴标记最大值 Y轴标记字体 X轴标记数 X轴宽度 X轴标记字体 X轴标记格式—是否显示年 X轴标记格式—是否显示月 北京亚控科技发展有限公司
历史曲线控件使用方法
48 49 50 51 52 53 54 55 56 57 58 XlabelFmtDay XlabelFmtHour XlabelFmtMinute XlabelFmtSecond XlabelFmtMilliSecond XWidthUnit XLableColor YLableColor CurveNum AdjustWidth AdjustWidthUnit Bool Bool Bool Bool Bool Long X轴标记格式—是否显示日 X轴标记格式—是否显示时 X轴标记格式—是否显示分 X轴标记格式—是否显示秒 X轴标记格式—是否显示毫秒 X轴宽度单位:秒、分、时、日 OLE_COLOR X轴标记颜色 OLE_COLOR Y轴标记颜色 返回当前曲线图表中的曲线数目 Long Long Long 时间轴调整宽度 时间轴调整宽度单位:秒、分、时、日、毫秒 注:以上属性中除CurveNum为只读型外,其它属性均为可读写类型。
4.2 控件方法列表
1、 Void CurveVarName(long 1Index,BSTR 1pszNewValue);
? 功能:改变历史曲线所连接的变量 ? 参数:1Index:曲线索引号 1pszNewValue:变量名
? 举例:定义变量V1,m为历史曲线控件名称,定义按钮弹起时
m.ChangeCurveVarName(1, \本站点\\v1\
把第一条曲线连接的变量改成V1。
2、 Void ChangeCurveVarNameForODBC(LONG lIndex,STRING szNewName,STRING
szDSN,STRING szUser,STRING szPwd,STRING szTable,STRING
szDateTimeField,STRING
szMilliSecondField,STRING
szDataField,STRING
szInvalidValue);
? 功能:改变历史曲线所连接的变量 ? 参数:lIndex:曲线索引号 szNewName:所连接变量 szDSN:使用的数据源名 szUser:用户名
szPwd:密码
szTable:数据库的表名
szDateTimeField:表中对应的时间字段 szMilliSecondField:表中对应的毫秒字段 szDataField:表中对应的数据字段
szInvalidValue:表中对应的无效值
? 举例:定义变量V2,m为历史曲线控件名称,定义按钮弹起时
m.ChangeCurveVarNameForODBC(2, \本站点\\v2\市场\,\ ,
\ );
把第二条曲线连接的变量改成V2。
3、 String HTGetTimeStringAtScooter(short nScootNum,String szFormat);
北京亚控科技发展有限公司
历史曲线控件使用方法
? 功能:取得指定指示器处字符串格式的时间
? 参数:nScootNum:指示器索引,1—左、2—右
szFormat:指定所需要的时间字符串格式,可为下列之一:
“Date”:以Windows控制面板相同格式显示日期 “Time”:以Windows控制面板相同格式显示时间 “DateTime”:以Windows控制面板相同格式显示日期时间
? 返回值:字符串型日期时间值
? 举例:定义DatTim为字符串型变量,取得当前左指示器的日期时间字符串
DatTim=HTGetTimeStringAtScooter(1,”DateTime”);
2、Float HTGetPenRealValue(short nPenNum,String szContent);
? 功能:取得指定曲线Y轴(数值轴)起点或终点的实际值 ? 参数:nPenNum:曲线索引,1~16
szContent:指定所需要类型,可为下列之一:
“Start”:将下限值的工程白分比转换为实际值
“End”:将上限值的工程白分比转换为实际值 “Valid”:判断取得的值是否有效,0—无效,1—有效
? 返回值:工程百分比对应的实际值
? 举例:定义PenVal实数型变量,取得第一条曲线当前下限值的实际值 PenVal= HTGetPenRealValue (1,”Start”); 3、Float HTGetValue(short nPenNum,String szValType);
? 功能:取得指定曲线整个图表上(当前可见部分)的最大/最小/平均值
? 参数:nPenNum:曲线索引,1~16 szValType:指定所需要类型,可为下列之一:
“AverageValue”:整个趋势的平均值 “MaxValue”:整个趋势的最大值
“MinValue”:整个趋势的最小值 “Valid”:判断取得的值是否有效,0—无效,1—有效
? 返回值:曲线整个图表上(当前可见部分)的最大/最小/平均值
? 举例:定义PenVal实数型变量,取得第一条曲线在整个图表上的最大值 PenVal= HTGetValue (1,”MaxValue”);
4、Float HTGetValueAtScooter(short nPenNum,short nScootNum,String szValType);
? 功能:取得指定曲线在指示器位置处所要求的值
? 参数:nPenNum:曲线索引,1~16
nScootNum:指示器索引,1—左、2—右 szValType:指定所需要类型,可为下列之一:
“Value”:取得指示器处的值
“Valid”:判断取得的值是否有效,0—无效,1—有效
? 返回值:指定曲线在指定指示器处的值
? 举例:定义PenVal实数型变量,取得第一条曲线在右指示器处的值 PenVal= HTGetValueAtScooter (1,,2,”Value”); 5、Float HTGetValueAtZone(short nPenNum,String szValType);
? 功能:取得指定曲线在左右指示器之间的的最大/最小/平均值
? 参数:nPenNum:曲线索引,1~16 szValType:指定所需要类型,可为下列之一:
北京亚控科技发展有限公司