📄 dy_dy.frm
字号:
BeginProperty Buttons {66833FE8-8583-11D1-B16A-00C0F0283628}
NumButtons = 3
BeginProperty Button1 {66833FEA-8583-11D1-B16A-00C0F0283628}
Key = "Save"
Object.ToolTipText = "保存"
ImageKey = "save"
EndProperty
BeginProperty Button2 {66833FEA-8583-11D1-B16A-00C0F0283628}
Key = "DY_LX"
Object.ToolTipText = "单元类型定义"
ImageKey = "DY_DY"
EndProperty
BeginProperty Button3 {66833FEA-8583-11D1-B16A-00C0F0283628}
Key = "FSSX"
Object.ToolTipText = "发送顺序"
ImageKey = "FSSX"
EndProperty
EndProperty
Begin VB.PictureBox Picture1
BorderStyle = 0 'None
Height = 375
Left = 2940
ScaleHeight = 375
ScaleWidth = 1395
TabIndex = 18
Top = 0
Width = 1395
Begin VB.Label Label4
AutoSize = -1 'True
Caption = "本站单元数"
BeginProperty Font
Name = "宋体"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 240
Left = 30
TabIndex = 19
Top = 60
Width = 1320
End
End
Begin VB.TextBox Text4
BeginProperty Font
Name = "宋体"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 375
Left = 4440
TabIndex = 17
Text = "Text4"
Top = 0
Width = 1275
End
End
End
Attribute VB_Name = "dy_dy"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Dim Temp_A As Integer
Private Sub Form_Load()
Dim i As Integer
Dim J As Integer
SetWindowPos Me.hwnd, -1, 0, 0, 0, 0, 1 Or 2 Or &H40
Temp_A = 1
Label2(0).Caption = Danyuan(1).Dy_Name
Label2(1).Caption = Danyuan_Leixing(Danyuan(1).Dy_type).Name
Label2(2).Caption = Danyuan(1).dy_addr
MSFlexGrid1.ColWidth(0) = 600
MSFlexGrid1.ColWidth(1) = 1900
MSFlexGrid1.ColWidth(2) = 600
MSFlexGrid1.ColWidth(3) = 2600
MSFlexGrid1.ColWidth(4) = 800
MSFlexGrid1.ColWidth(5) = 1100
MSFlexGrid1.ColWidth(6) = 700
MSFlexGrid1.ColWidth(7) = 700
MSFlexGrid2.ColWidth(0) = 600
MSFlexGrid2.ColWidth(1) = 3000
MSFlexGrid2.ColWidth(2) = 950
With MSFlexGrid3
.ColWidth(0) = 550
.ColWidth(1) = 1200
.ColWidth(2) = 700
.ColWidth(3) = 700
.ColWidth(4) = 800
.ColWidth(5) = 800
.Row = 0
.Col = 5
.Text = "使用"
.Col = 4
.Text = "声音"
.Col = 3
.Text = "状态1"
.Col = 2
.Text = "状态0"
.Col = 1
.Text = "名称"
.Col = 0
.Text = "遥信"
For i = 1 To 16
.TextMatrix(i, 0) = Str(i)
.TextMatrix(i, 1) = Unit_Yx(Temp_A).YX_NAME(i)
.TextMatrix(i, 2) = Unit_Yx(Temp_A).Yx_0(i)
.TextMatrix(i, 3) = Unit_Yx(Temp_A).Yx_1(i)
.TextMatrix(i, 4) = Unit_Yx(Temp_A).Yx_sy(i)
Next i
End With
MSFlexGrid1.Row = 0
MSFlexGrid1.Col = 0
MSFlexGrid1.Text = "地址"
For i = 1 To 32
MSFlexGrid1.Row = i
MSFlexGrid1.Text = Str(i)
Next i
MSFlexGrid1.Row = 0
MSFlexGrid1.Col = 1
MSFlexGrid1.Text = "线路名称"
MSFlexGrid1.Col = 2
MSFlexGrid1.Text = "类型"
MSFlexGrid1.Col = 3
MSFlexGrid1.Text = "说明"
MSFlexGrid1.Col = 4
MSFlexGrid1.Text = "定值长"
MSFlexGrid1.Col = 5
MSFlexGrid1.Text = "可能类型"
MSFlexGrid1.Col = 6
MSFlexGrid1.Text = "录波"
MSFlexGrid1.Col = 7
MSFlexGrid1.Text = "端口"
MSFlexGrid2.Col = 0
MSFlexGrid2.Row = 0
MSFlexGrid2.Text = "序号"
MSFlexGrid2.Col = 1
MSFlexGrid2.Text = "名称"
MSFlexGrid2.Col = 2
MSFlexGrid2.Text = "定值长"
For i = 1 To Danyuanshu
MSFlexGrid1.Row = i
MSFlexGrid1.Col = 1
MSFlexGrid1.Text = " " + Danyuan(i).Dy_Name
MSFlexGrid1.Col = 2
MSFlexGrid1.Text = Danyuan(i).Dy_type
MSFlexGrid1.Col = 3
If (Danyuan(i).Dy_type > 0) And (Danyuan(i).Dy_type < 40) Then MSFlexGrid1.Text = Danyuan_Leixing(Danyuan(i).Dy_type).Name
MSFlexGrid1.Col = 6
If Danyuan(i).Dy_gzlb = True Then
MSFlexGrid1.Text = "Y"
Else
MSFlexGrid1.Text = "N"
End If
MSFlexGrid1.Col = 7
MSFlexGrid1.Text = Danyuan(i).Dy_Duankou
If Danyuan(i).dy_addr > 0 Then
MSFlexGrid1.Col = 4
MSFlexGrid1.Text = LenB(Dingzhi_String(Danyuan(i).dy_addr))
MSFlexGrid1.Col = 5
For J = 1 To 32
If LenB(Dingzhi_String(Danyuan(i).dy_addr)) = Danyuan_Leixing(J).Dz_Long Then Exit For
Next J
If (J > 32) Or (LenB(Dingzhi_String(Danyuan(i).dy_addr))) = 0 Then
MSFlexGrid1.Text = "未知"
Else
MSFlexGrid1.Text = Str(J)
End If
End If
Next i
For i = 1 To 32
MSFlexGrid2.Row = i
MSFlexGrid2.Col = 0
MSFlexGrid2.Text = Str(i)
MSFlexGrid2.Col = 1
MSFlexGrid2.Text = Danyuan_Leixing(i).Name
MSFlexGrid2.Col = 2
MSFlexGrid2.Text = Danyuan_Leixing(i).Dz_Long
Next i
Text4.Text = Danyuanshu
End Sub
Private Sub MSFlexGrid1_Click()
Dim i As Integer
Temp_A = MSFlexGrid1.Row
Label2(0).Caption = Danyuan(Temp_A).Dy_Name
If Temp_A < Danyuanshu Then
Label2(1).Caption = Danyuan_Leixing(Danyuan(Temp_A).Dy_type).Name
Label2(2).Caption = Danyuan(Temp_A).dy_addr
End If
If (MSFlexGrid1.Col = 3) Or (MSFlexGrid1.Col = 5) Or (MSFlexGrid1.Col = 4) Then
Else
If MSFlexGrid1.Col = 6 Then
If MSFlexGrid1.Text = "Y" Then
MSFlexGrid1.Text = "N"
Else
MSFlexGrid1.Text = "Y"
End If
Else
Text1.Text = " " + Trim(MSFlexGrid1.Text)
Text1.SelStart = 1
Text1.Move MSFlexGrid1.CellLeft + MSFlexGrid1.Left, MSFlexGrid1.CellTop + MSFlexGrid1.Top, MSFlexGrid1.CellWidth, MSFlexGrid1.CellHeight + 40
Text1.Visible = True
Text1.SetFocus
Set_Focus Text1
End If
End If
With MSFlexGrid3
For i = 1 To 16
.TextMatrix(i, 1) = Unit_Yx(Temp_A).YX_NAME(i)
.TextMatrix(i, 2) = Unit_Yx(Temp_A).Yx_0(i)
.TextMatrix(i, 3) = Unit_Yx(Temp_A).Yx_1(i)
.TextMatrix(i, 4) = Unit_Yx(Temp_A).Yx_sy(i)
If Unit_Yx(Temp_A).Yx_Used(i) = True Then
.TextMatrix(i, 5) = "Y"
Else
.TextMatrix(i, 5) = "N"
End If
Next i
End With
End Sub
Sub MSFlexGrid1_LeaveCell()
Dim A As Integer
Dim b As Integer
If Text1.Visible = False Then
Exit Sub
End If
A = MSFlexGrid1.Col
b = MSFlexGrid1.Row
If (A <> 3) Or (b < 33) Then MSFlexGrid1.Text = Text1
Text1.Visible = False
Text1.Text = ""
End Sub
Private Sub MSFlexGrid1_Scroll()
Text1.Visible = False
End Sub
Private Sub MSFlexGrid3_Click()
If MSFlexGrid3.Col = 5 Then
If MSFlexGrid3.Text = "Y" Then
MSFlexGrid3.Text = "N"
Else
MSFlexGrid3.Text = "Y"
End If
Else
Text2.Visible = True
Text2.ZOrder
Text2.Text = Trim(MSFlexGrid3.Text)
Text2.Top = MSFlexGrid3.Top + MSFlexGrid3.CellTop
Text2.Left = MSFlexGrid3.Left + MSFlexGrid3.CellLeft
Text2.Width = MSFlexGrid3.CellWidth
Text2.Height = MSFlexGrid3.CellHeight
Text2.SetFocus
Set_Focus Text2
End If
End Sub
Private Sub Text1_LostFocus()
Text1.Visible = False
End Sub
Private Sub Text2_Change()
MSFlexGrid3.Text = Trim(Text2.Text)
End Sub
Private Sub Text2_LostFocus()
Text2.Visible = False
End Sub
Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)
Dim A As Integer
Dim Data1_c As Integer
Select Case Button.Key
Case Is = "Save"
Save_unit
Read_Unit
Text4.Text = Danyuanshu
Save_yfjd
If Temp_A > 0 Then Save_Yx (Temp_A)
Case Is = "DY_LX"
dzdy.Show
Case Is = "FSSX"
SetWindowPos fssx.hwnd, -1, 0, 0, 0, 0, 1 Or 2 Or &H40
End Select
End Sub
Sub Save_unit()
Dim i As Integer
Dim FileName As String
Dim FileNum
Dim KouHao As Integer
FileName = App.Path + "\" + "Unit.dat"
FileNum = FreeFile
Open FileName For Random As FileNum Len = Len(Danyuan(1))
For i = 1 To 32
MSFlexGrid1.Row = i
MSFlexGrid1.Col = 1
Danyuan(i).dy_addr = i
MSFlexGrid1.Col = 1
Danyuan(i).Dy_Name = " " + Trim(MSFlexGrid1.Text)
MSFlexGrid1.Col = 2
Danyuan(i).Dy_type = Val(MSFlexGrid1.Text)
MSFlexGrid1.Col = 6
If MSFlexGrid1.Text = "Y" Then
Danyuan(i).Dy_gzlb = True
Else
Danyuan(i).Dy_gzlb = False
End If
MSFlexGrid1.Col = 7
KouHao = Val(MSFlexGrid1.Text)
If (KouHao > 3) Or (KouHao < 1) Then KouHao = 1
Danyuan(i).Dy_Duankou = KouHao
Put FileNum, i, Danyuan(i)
Next i
Close FileNum
For i = 1 To 32
MSFlexGrid1.Row = i
MSFlexGrid1.Col = 3
If (Danyuan(i).Dy_type > 0) And (Danyuan(i).Dy_type < 40) Then
MSFlexGrid1.Text = Danyuan_Leixing(Danyuan(i).Dy_type).Name
Else
MSFlexGrid1.Text = ""
End If
Next i
End Sub
Sub Save_yfjd()
Dim FileName As String
Dim FileNum
FileName = App.Path + "\" + "yfjd.dat"
FileNum = FreeFile
Open FileName For Random As FileNum Len = Len(Yfjd)
'Yfjd.Address = Val(Text3(0).Text)
'Yfjd.wei = Val(Text3(1).Text)
'Put FileNum, 1, Yfjd
Close FileNum
End Sub
Sub Save_Yx(Addr As Integer)
Dim FileName As String
Dim FileNum
Dim i As Integer
FileName = App.Path + "\" + "Yaoxin.dat"
FileNum = FreeFile
Open FileName For Random As FileNum Len = Len(Unit_Yx(1))
With MSFlexGrid3
For i = 1 To 16
Unit_Yx(Addr).YX_NAME(i) = .TextMatrix(i, 1)
Unit_Yx(Addr).Yx_0(i) = .TextMatrix(i, 2)
Unit_Yx(Addr).Yx_1(i) = .TextMatrix(i, 3)
Unit_Yx(Addr).Yx_sy(i) = Val(.TextMatrix(i, 4))
If .TextMatrix(i, 5) = "Y" Then
Unit_Yx(Addr).Yx_Used(i) = True
Else
Unit_Yx(Addr).Yx_Used(i) = False
End If
Next i
Put FileNum, Addr, Unit_Yx(Addr)
End With
Close FileNum
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -