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

📄 dy_dy.frm

📁 This is a test ModBus comm s pragam in "STB-311".
💻 FRM
📖 第 1 页 / 共 2 页
字号:
      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 + -