settingform.frm
来自「16 relay output channels and 16 isolated」· FRM 代码 · 共 146 行
FRM
146 行
VERSION 5.00
Begin VB.Form SettingForm
BorderStyle = 3 'Fixed Dialog
Caption = "Set "
ClientHeight = 5160
ClientLeft = 45
ClientTop = 330
ClientWidth = 7020
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 5160
ScaleWidth = 7020
ShowInTaskbar = 0 'False
StartUpPosition = 2 'CenterScreen
Begin VB.CommandButton cmdCancel
Caption = "Cancel"
Height = 375
Left = 5640
TabIndex = 3
Top = 0
Width = 1215
End
Begin VB.CommandButton cmdOK
Caption = "Ok"
Height = 375
Left = 4080
TabIndex = 2
Top = 0
Width = 1215
End
Begin VB.ListBox lstPort
Height = 4110
Left = 5640
Style = 1 'Checkbox
TabIndex = 1
Top = 840
Width = 1215
End
Begin VB.ListBox lstChan
Columns = 5
Height = 4110
Left = 0
Style = 1 'Checkbox
TabIndex = 0
Top = 840
Width = 5475
End
Begin VB.Label Label1
Caption = "Port"
Height = 255
Left = 5640
TabIndex = 6
Top = 600
Width = 735
End
Begin VB.Label Channel
Caption = "Channel"
Height = 255
Left = 120
TabIndex = 5
Top = 600
Width = 855
End
Begin VB.Label txtInfo
Height = 375
Left = 120
TabIndex = 4
Top = 120
Width = 3735
End
End
Attribute VB_Name = "SettingForm"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Public Ok As Boolean
Public Flag As DISettingFlag
Public Enum DISettingFlag
DIRisingTrigger
DIFallingTrigger
DIFilterEnable
End Enum
Private Sub cmdCancel_Click()
Ok = False
Me.Hide
End Sub
Private Sub cmdOK_Click()
Dim lTemp As Long
Dim lTemp1 As Long
For i = 0 To m_DIChanNum - 1
lTemp1 = i Mod 32
If lTemp1 = 31 Then
lTemp = -(2 ^ lTemp1)
Else
lTemp = 2 ^ lTemp1
End If
If lstChan.Selected(i) = True Then
DISetting(i \ 32) = DISetting(i \ 32) Or lTemp
Else
lTemp = Not lTemp
DISetting(i \ 32) = DISetting(i \ 32) And lTemp
End If
Next i
Ok = True
Me.Hide
End Sub
Private Sub Form_Load()
Dim i As Integer
For i = 0 To m_DIChanNum - 1
lstChan.AddItem ("Port" & Hex(i \ 8) & "_" & Str(i Mod 8))
lTemp1 = i Mod 32
If lTemp1 = 31 Then
lTemp = -(2 ^ lTemp1)
Else
lTemp = 2 ^ lTemp1
End If
If (DISetting(i \ 32) And lTemp) Then
lstChan.Selected(i) = True
End If
Next i
For i = 0 To m_DIChanNum / 8 - 1
lstPort.AddItem ("Port" & Hex(i))
Next i
End Sub
Private Sub lstPort_ItemCheck(Item As Integer)
Dim i As Integer
For i = Item * 8 To (Item + 1) * 8 - 1
lstChan.Selected(i) = lstPort.Selected(Item)
Next i
End Sub
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?