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

📄 frmaddr.frm

📁 一个功能比较完善的远程抄表软件
💻 FRM
字号:
VERSION 5.00
Begin VB.Form frmAddr 
   BorderStyle     =   3  'Fixed Dialog
   Caption         =   "网络地址分配"
   ClientHeight    =   1725
   ClientLeft      =   45
   ClientTop       =   330
   ClientWidth     =   4320
   ControlBox      =   0   'False
   LinkTopic       =   "Form1"
   MaxButton       =   0   'False
   MDIChild        =   -1  'True
   MinButton       =   0   'False
   ScaleHeight     =   1725
   ScaleWidth      =   4320
   ShowInTaskbar   =   0   'False
   Begin VB.TextBox txtGate 
      Height          =   285
      Left            =   1200
      TabIndex        =   0
      Top             =   120
      Width           =   1215
   End
   Begin VB.TextBox txtBuild 
      Height          =   285
      Left            =   1200
      TabIndex        =   1
      Top             =   480
      Width           =   1215
   End
   Begin VB.TextBox txtUser 
      Height          =   285
      Left            =   1200
      TabIndex        =   2
      Top             =   840
      Width           =   1215
   End
   Begin VB.CommandButton cmdOK 
      Caption         =   "确定 "
      BeginProperty Font 
         Name            =   "MS Sans Serif"
         Size            =   9.75
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   375
      Left            =   2760
      TabIndex        =   3
      Top             =   120
      Width           =   1215
   End
   Begin VB.CommandButton cmdCancel 
      Caption         =   "取消 "
      BeginProperty Font 
         Name            =   "MS Sans Serif"
         Size            =   9.75
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   375
      Left            =   2760
      TabIndex        =   4
      Top             =   600
      Width           =   1215
   End
   Begin VB.Label Label1 
      Caption         =   "网关:"
      BeginProperty Font 
         Name            =   "MS Sans Serif"
         Size            =   9.75
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Left            =   240
      TabIndex        =   11
      Top             =   120
      Width           =   855
   End
   Begin VB.Label Label2 
      Caption         =   "安全器:"
      BeginProperty Font 
         Name            =   "MS Sans Serif"
         Size            =   9.75
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Left            =   240
      TabIndex        =   10
      Top             =   480
      Width           =   855
   End
   Begin VB.Label Label3 
      Caption         =   "用户:"
      BeginProperty Font 
         Name            =   "MS Sans Serif"
         Size            =   9.75
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Left            =   240
      TabIndex        =   9
      Top             =   840
      Width           =   855
   End
   Begin VB.Label Label4 
      Caption         =   "剩余地址:"
      BeginProperty Font 
         Name            =   "MS Sans Serif"
         Size            =   9.75
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Left            =   2400
      TabIndex        =   8
      Top             =   1320
      Width           =   975
   End
   Begin VB.Label lblFreeAddr 
      Height          =   255
      Left            =   3360
      TabIndex        =   7
      Top             =   1320
      Width           =   855
   End
   Begin VB.Label Label5 
      Caption         =   "地址范围:"
      BeginProperty Font 
         Name            =   "MS Sans Serif"
         Size            =   9.75
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Left            =   240
      TabIndex        =   6
      Top             =   1320
      Width           =   975
   End
   Begin VB.Label lblSumAddr 
      Height          =   255
      Left            =   1200
      TabIndex        =   5
      Top             =   1320
      Width           =   975
   End
End
Attribute VB_Name = "frmAddr"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'****************************************************************************
'人人为我,我为人人
'枕善居收藏整理
'发布日期:2007/07/09
'描    述:CBB三表户外计量系统 Ver 5.2
'网    站:http://www.Mndsoft.com/  (VB6源码博客)
'网    站:http://www.VbDnet.com/   (VB.NET源码博客,主要基于.NET2005)
'e-mail  :Mndsoft@163.com
'e-mail  :Mndsoft@126.com
'OICQ    :88382850
'          如果您有新的好的代码别忘记给枕善居哦!
'****************************************************************************

Private Sub cmdCancel_Click()
    Unload frmAddr
End Sub

Private Sub cmdOK_Click()
Dim MsgStr As String
Dim fChanged As Boolean
Dim rcAddr As Recordset

    Set rcAddr = dbCbb.OpenRecordset("AddrMap", dbOpenDynaset)
    MsgStr = ""
    If Not IsNumeric(txtGate.Text) Then
        MsgStr = MsgStr + "网关地址范围必须为整数" + Chr(10)
    End If
    If Not IsNumeric(txtBuild.Text) Then
        MsgStr = MsgStr + "安全器地址范围必须为整数" + Chr(10)
    End If
    If Not IsNumeric(txtUser.Text) Then
        MsgStr = MsgStr + "用户地址范围必须为整数" + Chr(10)
    End If
    If MsgStr <> "" Then
        MsgBox MsgStr, 48, "分配地址"
        Exit Sub
    Else
        If Val(txtGate.Text) + Val(txtBuild.Text) + Val(txtUser.Text) > 2187 Then
            MsgStr = MsgStr + "分配地址范围总和不能超过最大地址范围2187" + Chr(10)
        End If
        If MsgStr <> "" Then
            MsgBox MsgStr, 48, "分配地址"
            Exit Sub
        End If
        
        fChanged = False
        If Val(txtGate.Text) <> rcAddr!gate Then
            fChanged = True
        End If
        If Val(txtBuild.Text) <> rcAddr!Build Then
            fChanged = True
        End If
        If Val(txtUser.Text) <> rcAddr!User Then
            fChanged = True
        End If
        If fChanged Then
            If MsgBox("改变了地址分配" + Chr(10) + "必须重新设置网络的各项地址" + Chr(10) + "确定保存修改吗?", 48 + 1, "分配地址") = 1 Then
                Set rcAddr = dbCbb.OpenRecordset("AddrMap", dbOpenDynaset)
                If rcAddr.RecordCount <= 0 Then
                    rcAddr.AddNew
                Else
                    rcAddr.Edit
                End If
                rcAddr!gate = Val(txtGate.Text)
                rcAddr!Build = Val(txtBuild.Text)
                rcAddr!User = Val(txtUser.Text)
                rcAddr.Update
        
                If rcAddr!gate > 0 Then
                    LGate = 1
                    UGate = rcAddr!gate
                Else
                    LGate = 0
                    UGate = 0
                End If
                If rcAddr!Build > 0 Then
                    LBuild = rcAddr!gate + 1
                    UBuild = rcAddr!Build + LBuild - 1
                Else
                    LBuild = 0
                    UBuild = 0
                End If
                If rcAddr!User > 0 Then
                    LUser = rcAddr!gate + rcAddr!Build + 1
                    UUser = rcAddr!User + LUser - 1
                Else
                    LUser = 0
                    UUser = 0
                End If
            Else
                Exit Sub
            End If
        End If
    End If
    AppendStatusInfo "修改网络地址分配", icoBLUE
    SaveLog "修改网络地址分配", 0
    Unload frmAddr
End Sub


Private Sub Form_Load()
On Error GoTo ProcError
    If UBound(curForm) > 0 Then
        curForm(UBound(curForm)).Enabled = False
    End If
    ReDim Preserve curForm(UBound(curForm) + 1)
    Set curForm(UBound(curForm)) = Me
Dim rcAddr As Recordset

    Set rcAddr = dbCbb.OpenRecordset("AddrMap", dbOpenDynaset)
    If rcAddr.RecordCount <= 0 Then
        rcAddr.AddNew
        rcAddr!gate = 20
        rcAddr!Build = 30
        rcUser!Build = 2000
        rcAddr.Update
    End If
    If IsNull(rcAddr!gate) Or IsNull(rcAddr!Build) Or IsNull(rcAddr!User) Then
        Exit Sub
    End If
    txtGate.Text = rcAddr!gate
    txtBuild.Text = rcAddr!Build
    txtUser.Text = rcAddr!User
    
    lblSumAddr = 2187           '3^7=2187
    lblFreeAddr = 2187 - rcAddr!gate - rcAddr!Build - rcAddr!User
    Exit Sub
ProcError:
    ProcErr
End Sub


Private Sub Form_Unload(Cancel As Integer)
    ReDim Preserve curForm(UBound(curForm) - 1)
    If UBound(curForm) > 0 Then
        curForm(UBound(curForm)).Enabled = True
    End If
End Sub

Private Sub txtBuild_LostFocus()
    lblFreeAddr = 2187 - Val(txtGate.Text) - Val(txtBuild.Text) - Val(txtUser.Text)

End Sub


Private Sub txtGate_LostFocus()
    lblFreeAddr = 2187 - Val(txtGate.Text) - Val(txtBuild.Text) - Val(txtUser.Text)
End Sub


Private Sub txtUser_LostFocus()
    lblFreeAddr = 2187 - Val(txtGate.Text) - Val(txtBuild.Text) - Val(txtUser.Text)

End Sub




⌨️ 快捷键说明

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