⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dzdy_2.frm

📁 This is a test ModBus comm s pragam in "STB-311".
💻 FRM
📖 第 1 页 / 共 3 页
字号:

Private Sub MSFlexGrid1_Click()
Dim i As Integer
Dim A As Integer
A = MSFlexGrid1.Row
On Error Resume Next
Text1.ZOrder
Label5.Caption = MSFlexGrid1.Text
If MSFlexGrid1.Col = 0 Then Exit Sub
  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
    RichTextBox2.LoadFile App.Path + "\" + "dz" + Format(A, "00") + ".dat" '载入RichTextBox2
    RichTextBox1.LoadFile App.Path + "\" + "CL" + Format(A, "00") + ".txt" '载入RichTextBox1
    RichTextBox3.LoadFile App.Path + "\" + "BJ" + Format(A, "00") + ".txt" '载入RichTextBox3
    If MSFlexGrid2.Visible = True Then
     Read_Dz_Num (A)
     
     MSFlexGrid2.Clear
     MSFlexGrid2.TextMatrix(0, 0) = "序号"
     MSFlexGrid2.TextMatrix(0, 1) = "名称"
     MSFlexGrid2.TextMatrix(0, 2) = "类型"
     MSFlexGrid2.TextMatrix(0, 3) = "系数"
 
 
     For i = 1 To Dingzhi_Num(A)
          MSFlexGrid2.TextMatrix(i, 0) = Str(i)
          MSFlexGrid2.TextMatrix(i, 1) = Dingzhi(A, i).dz_name
          MSFlexGrid2.TextMatrix(i, 2) = Dingzhi(A, i).Dz_Datatype
          MSFlexGrid2.TextMatrix(i, 3) = Dingzhi(A, i).Dz_Xishu
      Next i
    End If
    If MSFlexGrid3.Visible = True Then
     Read_CL_Num (A)
     MSFlexGrid3.Clear
     MSFlexGrid3.Row = 0
     MSFlexGrid3.Col = 0
    MSFlexGrid3.Text = "序号"
     MSFlexGrid3.Col = 1
     MSFlexGrid3.Text = "名称"
     MSFlexGrid3.Col = 2
     MSFlexGrid3.Text = "类型"
     MSFlexGrid3.Col = 3
     MSFlexGrid3.Text = "单位"
     MSFlexGrid3.Col = 4
     MSFlexGrid3.Text = "系数"
     
      For i = 1 To Celiang_Num(A)
       With MSFlexGrid3
         .Row = i
         .Col = 0
         .Text = Str(i)
         .Col = 1
         .Text = CeLiang(A, i).Cl_Name
         .Col = 2
         .Text = CeLiang(A, i).CL_Type
         .Col = 3
         .Text = CeLiang(A, i).CL_Danwei
         .Col = 4
         If CeLiang(A, i).CL_Type < 14 Then
         .Text = Mid(Label1(CeLiang(A, i).CL_Type - 1), 4)
         Else
         .Text = CeLiang(A, i).CL_Type - 100
         End If
        End With
      Next i
    End If
   If MSFlexGrid4.Visible = True Then
   Read_bj_name (A)
   With MSFlexGrid4
    
    For i = 1 To 16 '
     .Row = i
     .Col = 1
     .Text = Unit_bj(A).Bj_Name(i)
     .Col = 2
     .Text = Unit_bj(A).Bj_sy(i)
     .Col = 3
    If Unit_bj(A).Bj_Used(i) = True Then
     .Text = "Y"
     Else
     .Text = "N"
     End If
  Next i
   End With
 End If
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 <> 32) Then MSFlexGrid1.Text = Text1
    Text1.Visible = False
    Text1.Text = ""
'Text1.Visible = False
End Sub

Private Sub MSFlexGrid1_Scroll()
'If Text1.Visible = False Then Exit Sub
'Text1.ZOrder
'If MSFlexGrid1.Col = 4 Then Exit Sub
'  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
Text1.Visible = False
End Sub

Private Sub MSFlexGrid2_Click()
Text2.ZOrder
If MSFlexGrid2.Col = 0 Then Exit Sub
 'Text1.Text = "  " + Trim(MSFlexGrid1.Text)
  Text2.Text = "  " + Trim(MSFlexGrid2.Text)
    Text2.SelStart = 1
    Text2.Move MSFlexGrid2.CellLeft + MSFlexGrid2.Left, MSFlexGrid2.CellTop + MSFlexGrid2.Top, MSFlexGrid2.CellWidth, MSFlexGrid2.CellHeight + 40
    Text2.Visible = True
    Text2.SetFocus
    Set_Focus Text2
 End Sub

Private Sub MSFlexGrid2_LeaveCell()
Dim A As Integer
Dim b As Integer
If Text2.Visible = False Then
     Exit Sub
 End If
 A = MSFlexGrid2.Col
 b = MSFlexGrid2.Row
  MSFlexGrid2.Text = Text2
    Text2.Visible = False
    Text2.Text = ""
End Sub

Private Sub MSFlexGrid2_Scroll()

    Text2.Visible = False
End Sub

Private Sub MSFlexGrid3_Click()
Text3.ZOrder

If MSFlexGrid3.Col = 4 Then Exit Sub
  Text3.Text = Trim(MSFlexGrid3.Text)
    Text3.SelStart = 1
    Text3.Move MSFlexGrid3.CellLeft + MSFlexGrid3.Left, MSFlexGrid3.CellTop + MSFlexGrid3.Top, MSFlexGrid3.CellWidth, MSFlexGrid3.CellHeight + 40
    Text3.Visible = True
    Text3.SetFocus
    Set_Focus Text3
End Sub

Private Sub MSFlexGrid3_LeaveCell()
Dim A As Integer
Dim b As Integer
If MSFlexGrid3.Col = 4 Then Exit Sub
If Text3.Visible = False Then
     Exit Sub
 End If
 A = MSFlexGrid3.Col
 b = MSFlexGrid3.Row
  MSFlexGrid3.Text = Text3
    Text3.Visible = False
    Text3.Text = ""

End Sub

Private Sub MSFlexGrid3_Scroll()
  Text3.Visible = False
End Sub


Private Sub MSFlexGrid4_Click()
If MSFlexGrid4.Col < 3 Then
Text4.Visible = True
Text4.ZOrder
Text4.Text = Trim(MSFlexGrid4.Text)
Text4.Top = MSFlexGrid4.Top + MSFlexGrid4.CellTop
Text4.Left = MSFlexGrid4.Left + MSFlexGrid4.CellLeft
Text4.Width = MSFlexGrid4.CellWidth
Text4.Height = MSFlexGrid4.CellHeight
Text4.SetFocus
Set_Focus Text4
Else
    If MSFlexGrid4.Text = "Y" Then
        MSFlexGrid4.Text = "N"
    Else
        MSFlexGrid4.Text = "Y"
    End If
End If
End Sub

Private Sub SSTab1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Text4.Visible = False
End Sub

Private Sub Text4_Change()
MSFlexGrid4.Text = "  " + Text4.Text
End Sub

Private Sub Text4_LostFocus()
Text4.Visible = False
End Sub

Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)
Dim FileName As String
Dim FileNum
Dim A As Integer
Dim i As Integer
A = MSFlexGrid1.Row
Select Case Button.Key
   Case Is = "Save"
     FileName = App.Path + "\" + "Lexing.dat"
     FileNum = FreeFile
     Open FileName For Random As FileNum Len = Len(Danyuan_Leixing(1))
       For i = 1 To 32
        MSFlexGrid1.Row = i
        MSFlexGrid1.Col = 1
        Danyuan_Leixing(i).Name = MSFlexGrid1.Text
         MSFlexGrid1.Col = 2
        Danyuan_Leixing(i).Dz_Long = Val(MSFlexGrid1.Text)
        Put FileNum, i, Danyuan_Leixing(i)
       Next i
     Close FileNum
        MSFlexGrid1.Row = A
    Select Case SSTab1.Tab
     Case 0 '定值
       If MSFlexGrid2.Visible = True Then
         If A > 0 Then Save_Dz_Grid (A)
        Else
          FileName = App.Path + "\" + "dz" + Format(A, "00") + ".dat"
          RichTextBox2.SaveFile FileName, 1
       End If
     Case 1 '测量
         If MSFlexGrid3.Visible = True Then
         If A > 0 Then Save_cl_grid (A)
        Else
          FileName = App.Path + "\" + "CL" + Format(A, "00") + ".txt"
          RichTextBox1.SaveFile FileName, 1
          
       End If
     Case 2 '报警
       Text4.Visible = False
       save_bjdz (Val(Text5))
       If A > 0 Then Save_Bj_grid (A)
    Case 3 '投退值
    
      End Select
   Case Is = "Grid"
     MSFlexGrid2.Visible = True
     MSFlexGrid3.Visible = True
     MSFlexGrid4.Visible = True
     Text2.Visible = False
     Text3.Visible = False
     Text4.Visible = False
   Case Is = "Text"
     MSFlexGrid2.Visible = False
     MSFlexGrid3.Visible = False
   ' MSFlexGrid4.Visible = False
     Text2.Visible = False
     Text3.Visible = False
   '  Text4.Visible = False
End Select
 MSFlexGrid1.Row = A
 MSFlexGrid1_Click
End Sub
Sub Save_Dz_Grid(Type_num As Integer)
Dim J As Integer
Dim i As Integer
 Dim FileName As String
 Dim FileNum
  FileName = App.Path + "\" + "dz" + Format(Type_num, "00") + ".dat"
  FileNum = FreeFile
Open FileName For Output As FileNum
For i = 1 To MSFlexGrid2.Rows - 1
    FileName = ""
 
    If Trim(MSFlexGrid2.TextMatrix(i, 1)) <> "" Then
    For J = 1 To 3
        If J < 3 Then
          FileName = FileName + Trim(MSFlexGrid2.TextMatrix(i, J)) + ","
          Else
          FileName = FileName + Trim(MSFlexGrid2.TextMatrix(i, J))
          End If
    Next J
    Print #FileNum, FileName
  End If
Next i
Print #FileNum, -1
Close (FileNum)
End Sub

Sub Save_cl_grid(Type_num As Integer)
  Dim FileName As String
  Dim i As Integer
  Dim J As Integer
 Dim FileNum
  FileName = App.Path + "\" + "Cl" + Format(Type_num, "00") + ".txt"
  FileNum = FreeFile
Open FileName For Output As FileNum
For i = 1 To MSFlexGrid3.Rows - 1
    FileName = ""
    If Trim(MSFlexGrid3.TextMatrix(i, 1)) <> "" Then
    For J = 1 To 3
      
        If J < 3 Then
          FileName = FileName + Trim(MSFlexGrid3.TextMatrix(i, J)) + ","
          Else
          FileName = FileName + Trim(MSFlexGrid3.TextMatrix(i, J))
          End If
    Next J
    Print #FileNum, FileName
  End If
Next i
Print #FileNum, -1
Close (FileNum)
End Sub
Sub Save_Bj_grid(Type_num As Integer)
  Dim FileName As String
  Dim i As Integer
  Dim J As Integer
 Dim FileNum
  FileName = App.Path + "\" + "BJ" + Format(Type_num, "00") + ".txt"
  FileNum = FreeFile
  With MSFlexGrid4
Open FileName For Random As FileNum Len = Len(Unit_bj(1))

For i = 1 To 16
   .Row = i
   .Col = 1
   Unit_bj(Type_num).Bj_Name(i) = MSFlexGrid4.Text
   .Col = 2
   Unit_bj(Type_num).Bj_sy(i) = Val(MSFlexGrid4.Text)
   .Col = 3
   If .Text = "Y" Then
     Unit_bj(Type_num).Bj_Used(i) = True
   Else
     Unit_bj(Type_num).Bj_Used(i) = False
   End If
Next i
Put FileNum, 1, Unit_bj(Type_num)
Close FileNum
End With
End Sub
Sub save_bjdz(Sound As Integer)
Dim FileName As String
Dim i As Integer
Dim J As Integer
Dim FileNum
FileName = App.Path + "\" + "BJ_sound.dat"
FileNum = FreeFile
 Open FileName For Random As FileNum Len = 2
  Put FileNum, 1, Sound
 Close FileNum
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -