前面的博客介绍了使用复选框和脚本进行用户归档控件显示和隐藏,我们还可以使用单选框做列的升序和降序排列。
1. 先建立用户归档以及与PLC的连接,画面上设置一个用户归档控件UA,添加一个单选框名字修改为option。
在画面的打开事件中添加以下脚本
Sub OnOpen()
Dim Myoption
Set Myoption=screenitems("option")
Myoption.Process =0
End Sub
2.在option控件的“事件-属性主题-输出输入-选择框-更改”中添加如下vbs脚本。
Sub Process_OnPropertyChanged(ByVal Item, ByVal value)
Dim Myoption,ua
Dim process,pows,i,j,sort(8),ColumnIndex,ColumnSort
Set ua=ScreenItems("UA")
Set Myoption=ScreenItems("option")
process=Myoption.Process
For i=0 To 7
pows=2^i
If process And pows Then
For j=0 To 7
sort(j)=0
Next
sort(i)=1
End If
Next
For i=0 To 7
If sort(i)=1 Then
j=i
If i Mod 2 =0 Then
ColumnSort=1 '升序
Else
ColumnSort=2 '降序
End If
End If
Next
ColumnIndex=j\2 '记录到底哪一列进行排序
For i=0 To 3 '先清空其他列的排序规则
ua.ColumnIndex =i
ua.ColumnSort =0
Next
ua.ColumnIndex =ColumnIndex
ua.ColumnSort =ColumnSort
End Sub