📄 module1.bas
字号:
Attribute VB_Name = "Module1"
Global Const LISTVIEW_MODE0 = "Big icon"
Global Const LISTVIEW_MODE1 = "Small icon"
Global Const LISTVIEW_MODE2 = "List view"
Global Const LISTVIEW_MODE3 = "Report view"
Public gMainForm As frmMain
Public gConnectionHandle, gGroupHandle As Long
Public g_strMsg As String
Public g_ItemCol As New ItemCollection
Sub Main()
Set gMainForm = New frmMain
Load gMainForm
gMainForm.Show
End Sub
Sub ServerDataChangeProc(ByVal ServerHandle As Long, _
ByVal GroupHandle As Long, _
ByVal itemHandle As Long, _
ByRef Value As Variant, _
ByVal dDateTime As Double, _
ByVal Quality As Integer)
Dim pItem As CItem
For Each pItem In g_ItemCol
If pItem.itemHandle = itemHandle Then
pItem.ItemQuality = Quality
pItem.ItemValue = Value
Dim ftDT As FILETIME
Dim sysDT As SYSTEMTIME
CopyMemory ftDT, dDateTime, Len(dDateTime)
FileTimeToSystemTime ftDT, sysDT
pItem.ItemTimeStamp = Win32FileTimeToVB(ftDT)
Exit For
End If
Next
End Sub
Sub ServerShutdownProc(ByVal ServerHandle As Long)
frmMain.Disconnect
End Sub
Sub StringToByte(strString As String, ByteArray() As Byte)
Dim i As Long
For i = 1 To Len(strString)
ByteArray(i - 1) = Asc(Mid$(strString, i, 1))
Next i
ByteArray(i - 1) = 0
End Sub
Sub FormatOpcQuality(nQuality As Integer, ByRef strTmp As String)
Select Case (nQuality)
Case 64
strTmp = "不确定"
Case 0
strTmp = "无效"
Case 192
strTmp = "正常"
Case Else
strTmp = "未知"
End Select
End Sub
Sub FormatDataType(ByRef Value As Variant, ByRef strTmp As String)
Select Case (VarType(Value))
Case vbBoolean
strTmp = "布尔"
Case vbInteger
strTmp = "整数"
Case vbLong
strTmp = "长整数"
Case vbSingle
strTmp = "浮点数"
Case vbString
strTmp = "字符串"
Case Else
strTmp = "未知:" & CStr(VarType(Value))
End Select
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -