iFix的一种画面切换方法
- 格式:doc
- 大小:160.68 KB
- 文档页数:8
iFix下的一种画面切换方法
在工业生产线上,一个大的生产系统往往由若干个子系统构成。其相应的监控画面也应该随之分成若干个画面组。这里就产生了一个问题,就是如何处理从一个子系统切换到另一个子系统时画面的切换,在一个子系统内由一个工艺画面切换到另一个工艺画面的问题。
一、画面构成
我们把屏幕分为四个部分:
⑴顶部,由标题和工艺功能画面切换按钮组成。标题可随工艺画面变化而变化,反映画面内容;工艺功能画面切换按钮用于切换子系统内不同的功能画面。绿色按钮代表工艺画面部分当前显示画面和该按钮一致,且禁止操作;灰色按钮代表工艺画面部分可以切换到该按钮指示的工艺画面。按钮上的标识为工艺小系统名;称或功能名称,按钮的数量和子系统有关。
该部分根据具体需要可以增加按钮和其它显示内容。
该部分一般不会被切换。
⑵左侧含子系统切换按钮。也可以增加具体工程要求的其它按钮和数据、状态显示内容。工艺画面所属系统对应操作按钮颜色为绿色,且不能操作。其余
系统所对应按钮为灰色,可操作。按钮标识为子系统名称。
该部分一般不会被切换。
⑶底部一般是公共报警或子系统报警
该部分可固定不切换,也可根据子系统的变化而切换。
⑷中部这一部分是设备监控的主要部分。这是设备状态、过程数据显示及设备操作的区域。随子系统和工艺功能显示要求而切换。各子系统的工艺功能画面数量不等。
二、系统规划
2.1、子系统的划分
2.2、各子系统工艺画面、功能画面的内容确定
以上两项列出表格。
2.3、切换方法的规划设计
2.3.1、画面名称的构成
画面名称按下述格式构成:
工艺名称(功能名称)_子系统编号_工艺功能编号.grf
4汉字 1位数字1位数字
这样处理,便于系统的动画表示和工艺功能画面的动画表示。
2.3.2、辅助全局变量
其中: SYS_No—---子系统编号,整形数;
GY_No------工艺单元、功能画面编号,整形数;
Pic_Nm0----在显示工艺、功能画面名称,字符串;
Pic_Nm1----待显示工艺、功能画面名称,字符串;
2.4、显示及切换规则
2.4.1、例:按钮“系统1”背景色为绿色,且禁止操作时,说明工艺、功能区显示的是1#子系统的设备运行情况。依此类推。
2.4.2、例:例:按钮“系统1”背景色为绿色,且禁止操作;顶部按钮“1”背
景色为绿色,且禁止操作时,说明工艺、功能区显示的是1#子系统的1#设备组设备运行情况。依此类推。子系统不同,顶部显示的按钮数量多少不等。按钮显示与否,和子系统相关。
2.4.3、例:1#子系统有10个画面,2#子系统有6个画面。如果当前显示的是1#子系统10号画面,按“系统4”按钮时,画面切换到4#子系统1#画面。其余相同。
三、相关脚本
3.1、顶部画面脚本
画面全局变量
Dim SYS_No As String
Dim HM_NM0 As String
Dim HM_NM1 As String
1#按钮脚本
Private Sub GY_BT1_Click()
SYS_No = user.SYS_No.CurrentValue
HM_NM0 = user.Pic_Nm0.CurrentValue
HM_NM1 = "GY_" + Format(SYS_No) + "_" + Format(1) + ".grf"
ReplacePicture HM_NM1, HM_NM0
End Sub
10#按钮脚本
Private Sub GY_BT10_Click()
SYS_No = user.SYS_No.CurrentValue
HM_NM0 = user.Pic_Nm0.CurrentValue
HM_NM1 = "GY_" + Format(SYS_No) + "_" + Format(10) + ".grf"
ReplacePicture HM_NM1, HM_NM0
End Sub
其余类同。
3.2、左侧画面脚本
画面全局变量
Dim HM_Nm0 As String
Dim HM_Nm1 As String
Dim HM_No As String
1#子系统按钮脚本
Private Sub SYS_BT1_Click()
HM_Nm0 = user.Pic_Nm0.CurrentValue
HM_No = Format(user.GY_No.CurrentValue)
HM_Nm1 = "GY_" + Format(1) + "_" + HM_No + ".grf" ReplacePicture HM_Nm1, HM_Nm0
End Sub
2#子系统按钮脚本
Private Sub SYS_BT2_Click()
HM_Nm0 = user.Pic_Nm0.CurrentValue
HM_No = Format(user.GY_No.CurrentValue)
If user.GY_No.CurrentValue > 6 Then HM_No = "1" HM_Nm1 = "GY_" + Format(2) + "_" + HM_No + ".grf" ReplacePicture HM_Nm1, HM_Nm0
End Sub
3#子系统按钮脚本
Private Sub SYS_BT3_Click()
HM_Nm0 = user.Pic_Nm0.CurrentValue
HM_No = Format(user.GY_No.CurrentValue)
If user.GY_No.CurrentValue > 7 Then HM_No = "1" HM_Nm1 = "GY_" + Format(3) + "_" + HM_No + ".grf" ReplacePicture HM_Nm1, HM_Nm0
End Sub
4#子系统按钮脚本
Private Sub SYS_BT4_Click()
HM_Nm0 = user.Pic_Nm0.CurrentValue
HM_No = Format(user.GY_No.CurrentValue)
If user.GY_No.CurrentValue > 8 Then HM_No = "1" HM_Nm1 = "GY_" + Format(4) + "_" + HM_No + ".grf" ReplacePicture HM_Nm1, HM_Nm0