📄 sensor1.frm
字号:
VERSION 5.00
Object = "{5E9E78A0-531B-11CF-91F6-C2863C385E30}#1.0#0"; "MSFLXGRD.OCX"
Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCTL.OCX"
Begin VB.Form sensor1
BorderStyle = 1 'Fixed Single
Caption = "传感器参数配置 "
ClientHeight = 8010
ClientLeft = 1650
ClientTop = 2160
ClientWidth = 11775
ControlBox = 0 'False
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 8010
ScaleWidth = 11775
Begin VB.TextBox Text1
Alignment = 2 'Center
BorderStyle = 0 'None
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Left = 2880
TabIndex = 0
Text = "Text1"
Top = 720
Width = 960
End
Begin VB.ComboBox Combo1
Height = 300
Left = 2520
TabIndex = 1
Text = "Combo1"
Top = 1200
Width = 1170
End
Begin MSFlexGridLib.MSFlexGrid MSFlexGrid1
Height = 7170
Left = 120
TabIndex = 3
Top = 600
Width = 11385
_ExtentX = 20082
_ExtentY = 12647
_Version = 393216
Cols = 7
BackColorBkg = 16711935
FocusRect = 0
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin MSComctlLib.TabStrip TabStrip1
Height = 7815
Left = 45
TabIndex = 2
Top = 120
Width = 11655
_ExtentX = 20558
_ExtentY = 13785
_Version = 393216
BeginProperty Tabs {1EFB6598-857C-11D1-B16A-00C0F0283628}
NumTabs = 1
BeginProperty Tab1 {1EFB659A-857C-11D1-B16A-00C0F0283628}
ImageVarType = 2
EndProperty
EndProperty
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin VB.Menu exit1
Caption = "关闭(&X)"
End
Begin VB.Menu save1
Caption = "保存(&S)"
End
Begin VB.Menu setup1
Caption = "缺省设置"
End
End
Attribute VB_Name = "sensor1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim XiaoShu(75), Numb1
Private Sub Combo1_Change()
MSFlexGrid1.Text = Combo1.Text
End Sub
Private Sub Combo1_Click()
MSFlexGrid1.Text = Combo1.Text
End Sub
Private Sub exit1_Click()
Unload Me
End Sub
Private Sub Form_Activate()
MSFlexGrid1_Click
End Sub
Private Sub Form_Load()
Dim Tabx As Object
''On Error Resume Next
Me.Move (Screen.Width - Width) / 2, (Screen.Height - Height) / 2
TabStrip1.Tabs(1).Caption = "西门子S7-300模拟量"
Set Tabx = TabStrip1.Tabs.Add(2, , "西门子S7-300开关量")
MSFlexGrid1.Rows = 25
MSFlexGrid1.Cols = 11
For i% = 0 To 10
MSFlexGrid1.colwidth(i%) = 900
Next
MSFlexGrid1.colwidth(0) = 2000
For i% = 1 To MSFlexGrid1.Cols - 1
MSFlexGrid1.ColAlignment(i%) = 3
Next i%
MSFlexGrid1.ColAlignment(0) = 2
Me.Height = 8700
For i% = 0 To 3
Combo1.AddItem i%
Next
For i% = 0 To 65
XiaoShu(i%) = 7
Next
' XiaoShu(0) = 6
' XiaoShu(13) = 6
TabStrip1_Click
End Sub
Private Sub MSFlexGrid1_Click()
col3% = MSFlexGrid1.Col
Combo1.Visible = False
Text1.Visible = False
If Numb1 = 0 And col3% = 9 And Pasword <> "Weicj" Then Exit Sub
If Numb1 = 1 And Pasword <> "Weicj" Then Exit Sub
If col3% = 10 Then
Combo1.Visible = True
Combo1 = MSFlexGrid1.Text
Combo1.SetFocus
Combo1.Width = MSFlexGrid1.CellWidth
xx1 = MSFlexGrid1.Left + MSFlexGrid1.CellLeft
yy1 = MSFlexGrid1.CellTop + MSFlexGrid1.Top
Combo1.Move xx1, yy1
Else
Text1.Visible = True
Text1 = MSFlexGrid1.Text
Text1.SetFocus
'------------------------------
Text1.Width = MSFlexGrid1.CellWidth
Text1.Height = MSFlexGrid1.CellHeight
xx1 = MSFlexGrid1.Left + MSFlexGrid1.CellLeft
yy1 = MSFlexGrid1.CellTop + MSFlexGrid1.Top
Text1.Move xx1, yy1
End If
End Sub
Private Sub MSFlexGrid1_Scroll()
Combo1.Visible = False
Text1.Visible = False
End Sub
Private Sub save1_Click()
'On Error Resume Next
Dim xyz(10)
If Numb1 = 0 Then
For i% = 1 To MSFlexGrid1.Rows - 2
numtd% = Val(MSFlexGrid1.TextMatrix(i%, 9))
For j% = i% + 1 To MSFlexGrid1.Rows - 1
If numtd% = Val(MSFlexGrid1.TextMatrix(j%, 9)) Then
aa$ = "多个量使用一个通道!" ' MSFlexGrid1.TextMatrix(i%, 0) +
rel = MsgBox(aa$, 0, "参数设置")
MSFlexGrid1.Row = i%
MSFlexGrid1.Col = 9
Text1.Text = MSFlexGrid1.TextMatrix(i%, 9)
' Text1.SetFocus
MSFlexGrid1.TopRow = i% '置错误行位顶行
Exit Sub
End If
Next
Next
End If
'======================================
For i% = 1 To MSFlexGrid1.Rows - 1
For j% = 1 To 10
zfc$ = zfc$ & MSFlexGrid1.TextMatrix(i%, j%) & ","
Next
Next
finame1$ = sysdir & "\Canshu" & Numb1 & ".dat" '参数文件名
Open finame1$ For Output As #1
Print #1, zfc$
Close #1
'------------------------------------------------------------
If Numb1 = 1 Then
For i% = 0 To BlnumZA(1)
xyz(1) = Val(MSFlexGrid1.TextMatrix(1 + i%, 1))
xyz(2) = Val(MSFlexGrid1.TextMatrix(1 + i%, 2))
ii% = Val(xyz(1)) '------2003-06-22 15:00
jj% = Val(xyz(2))
Chan_Di(ii%, jj%) = i%
Next
End If
If Numb1 = 0 Then
For i% = 0 To MSFlexGrid1.Rows - 2
For j% = 1 To 10
xyz(j%) = Val(MSFlexGrid1.TextMatrix(1 + i%, j%))
Next
kkk(i%) = Int(0.5 + 10 ^ XiaoShu(i%) * ((xyz(2) - xyz(1)) / (xyz(7) - xyz(6))))
kkk(i%) = kkk(i%) / (10 ^ XiaoShu(i%)) '-------------斜率k
bbb(i%) = xyz(1) - kkk(i%) * xyz(6) + xyz(8)
bbb(i%) = Val(Format(bbb(i%), "##0.000")) '-------------截距b
baojing(0, i%) = Val(xyz(3)) '-------------------------上限报警
baojing(1, i%) = Val(xyz(4)) '-------------------------下限报警
beishu(i%) = 10 ^ Val(xyz(10))
Chan_Ai(i%) = Val(xyz(9))
Next
zfc$ = ""
For i% = 0 To BlnumZA(0)
zfc$ = zfc$ & kkk(i%) & "," & bbb(i%) & ","
Next
finame1$ = sysdir + "\kbbc.txt"
Open finame1$ For Output As #1
Print #1, zfc$
Close #1
End If
Unload Me
End Sub
Private Sub setup1_Click()
finame1$ = sysdir & "\defau" & Numb1 & ".dat"
If Dir$(finame1$) <> "" Then
Open finame1$ For Input As #1
For i% = 0 To BlnumZA(Numb1)
For j% = 1 To 10
Input #1, zhjl$
MSFlexGrid1.TextMatrix(i% + 1, j%) = zhjl$
Next
Next
Close #1
End If
End Sub
Private Sub TabStrip1_Click()
On Error Resume Next
'------------------------------------
Text1.Text = ""
Text1.Visible = False
Combo1.Visible = False
MSFlexGrid1.Clear
MSFlexGrid1.TextMatrix(0, 1) = "量程下限"
MSFlexGrid1.TextMatrix(0, 2) = "量程上限"
MSFlexGrid1.TextMatrix(0, 3) = "下限报警"
MSFlexGrid1.TextMatrix(0, 4) = "上限报警"
MSFlexGrid1.TextMatrix(0, 5) = "单位"
MSFlexGrid1.TextMatrix(0, 6) = "最小测值"
MSFlexGrid1.TextMatrix(0, 7) = "最大测值"
MSFlexGrid1.TextMatrix(0, 8) = "补偿"
MSFlexGrid1.TextMatrix(0, 9) = "通道"
MSFlexGrid1.TextMatrix(0, 10) = "小数"
'=============================
Numb1 = TabStrip1.SelectedItem.Index - 1 '获得选中的站号
'--------------
If Numb1 = 1 Then
MSFlexGrid1.TextMatrix(0, 0) = " 开关量名称"
For ij% = 1 To 10
MSFlexGrid1.TextMatrix(0, ij%) = ""
Next
MSFlexGrid1.TextMatrix(0, 1) = "模块"
MSFlexGrid1.TextMatrix(0, 2) = "位"
Else
MSFlexGrid1.TextMatrix(0, 0) = " 模拟量名称"
End If
finame1$ = sysdir & "\Canshu" & Numb1 & ".dat"
MSFlexGrid1.Rows = BlnumZA(Numb1) + 2
For i% = 0 To BlnumZA(Numb1)
If Numb1 = 1 Then
MSFlexGrid1.TextMatrix(i% + 1, 0) = DI_Nam(i%)
Else
MSFlexGrid1.TextMatrix(i% + 1, 0) = AI_Nam(i%)
End If
Next
'---------------
If Dir$(finame1$) <> "" Then
Open finame1$ For Input As #1
For i% = 0 To BlnumZA(Numb1)
For j% = 1 To 10
Input #1, zhjl$
MSFlexGrid1.TextMatrix(i% + 1, j%) = zhjl$
Next
Next
Close #1
End If
'------------------------------------------
If Numb1 = 0 Then
For i% = Ainumgl To 2 * Ainumgl - 1
MSFlexGrid1.Row = i% + 1
For j% = 0 To 10
MSFlexGrid1.Col = j%
MSFlexGrid1.CellForeColor = &HC0&
Next
Next
End If
End Sub
Private Sub Text1_Change()
MSFlexGrid1.Text = Text1.Text
End Sub
Private Sub Text1_GotFocus()
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -