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

📄 readeredit.vb

📁 vb.net写的图书管理系统,功能完备,能正常使用,可用于二次开发.
💻 VB
📖 第 1 页 / 共 2 页
字号:
        Me.btnDelete.Name = "btnDelete"
        Me.btnDelete.Size = New System.Drawing.Size(75, 25)
        Me.btnDelete.TabIndex = 30
        Me.btnDelete.Text = "删除"
        '
        'btnExit
        '
        Me.btnExit.Location = New System.Drawing.Point(240, 288)
        Me.btnExit.Name = "btnExit"
        Me.btnExit.Size = New System.Drawing.Size(75, 25)
        Me.btnExit.TabIndex = 29
        Me.btnExit.Text = "退出"
        '
        'btnUpdate
        '
        Me.btnUpdate.Location = New System.Drawing.Point(48, 288)
        Me.btnUpdate.Name = "btnUpdate"
        Me.btnUpdate.Size = New System.Drawing.Size(75, 25)
        Me.btnUpdate.TabIndex = 28
        Me.btnUpdate.Text = "更新"
        '
        'ReaderEdit
        '
        Me.AutoScaleBaseSize = New System.Drawing.Size(6, 14)
        Me.ClientSize = New System.Drawing.Size(368, 325)
        Me.Controls.Add(Me.btnDelete)
        Me.Controls.Add(Me.btnExit)
        Me.Controls.Add(Me.btnUpdate)
        Me.Controls.Add(Me.GroupBox2)
        Me.Controls.Add(Me.GroupBox1)
        Me.Name = "ReaderEdit"
        Me.Text = "读者信息维护"
        Me.GroupBox1.ResumeLayout(False)
        Me.GroupBox2.ResumeLayout(False)
        Me.ResumeLayout(False)

    End Sub

#End Region
    '定义变量curID,用于记录当前人员ID
    Dim curID As Long
    
    '在对读者信息进行维护以前,首先要查询出要维护的读者
    Private Sub btnSearch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSearch.Click
        '判断所查询的读者姓名是否为空
        If txtFindName.Text.Trim = "" Then
            '若为空,给出错误信息,并退出
            ErrorMSG("所查询姓名不能为空")
            Exit Sub
        End If
        'getField函数可以根据某数据表中某已知字段,得到另一指定字段的信息。传入的参数依次为:需要的字段;查询条件;表名。详细信息请参见数据库操作字段
        '调用getField函数,得到当前人员ID
        Dim strID As String
        strID = getField("ID", "Name='" & txtFindName.Text.Trim & "'", "ReaderInfo")
        If strID = "" Then
            '若所查询人员不存在,则给出提示信息,清空输入框,并设置控件不可用
            ErrorMSG("所查询人员不存在")
            ClearData()
            setEnabled(False)
        Else
            curID = CLng(strID)
            '得到当前人员ID后,填充人员信息
            fullInfo()
        End If
    End Sub

    Private Sub btnUpdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUpdate.Click
        '判断数据是否合法
        If Not checkData() Then
            '若不合法,则退出
            Exit Sub
        End If
        Dim strSQL As String
        Dim ret As Boolean
        '生成更新记录的SQL语句
        strSQL = "Update ReaderInfo set "
        strSQL &= "[Name] ='" & txtName.Text.Trim & "',"
        strSQL &= "[Gender] ='" & cmbGender.Text.Trim & "',"
        strSQL &= "[MaxNumber] = '" & txtMaxNum.Text.Trim & "',"
        strSQL &= "[MaxTime] = '" & txtMaxTime.Text.Trim & "' "
        strSQL &= "where [ID]=" & curID
        '执行SQL语句,更新数据库中数据
        ret = DBManager.executeNonQuery(strSQL)
        If ret Then
            '若操作成功,给出提示信息
            InfoMSG("读者信息更新成功!")
        Else
            '若操作不成功,给出错误信息
            ErrorMSG("读者信息更新失败!")
        End If
    End Sub

    Private Sub btnDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDelete.Click
        Dim strSQL As String
        Dim ret As Boolean
        '生成删除记录的SQL语句
        strSQL = "Delete from ReaderInfo where  ID=" & curID
        '执行SQL语句,完成删除操作
        ret = DBManager.executeNonQuery(strSQL)
        If ret Then
            '如果删除成功,则提示成功信息并重新加载数据
            InfoMSG("读者信息删除成功!")
            ClearData()
        Else
            '如果删除失败,提示失败信息
            ErrorMSG("读者信息删除失败!")
        End If
    End Sub

    Private Sub ClearData()
        txtName.Text = ""
        cmbGender.Text = ""
        txtMaxNum.Text = ""
        txtMaxTime.Text = ""
    End Sub
    '根据读者ID取出读者信息
    Private Sub fullInfo()
        Dim curReader As DataSet
        Dim strSQL As String
        '生成SQL语句
        strSQL = " select ID,Name, Gender, MaxNumber,MaxTime from ReaderInfo"
        strSQL = strSQL & " where ID=" & curID
        '执行SQL语句,取出结果集
        curReader = DBManager.executeSelectQuery(strSQL, "ReaderInfo")
        '如果当前人员不存在,则给出提示信息
        If curReader Is Nothing OrElse curReader.Tables(0).Rows.Count = 0 Then
            InfoMSG("用户" + txtFindName.Text.Trim + "不存在!")
            Exit Sub
        End If
        '填充人员信息
        With curReader.Tables("ReaderInfo").Rows(0)
            curID = .Item("ID") & ""
            '姓名
            txtName.Text = .Item("Name") & ""
            '性别
            cmbGender.Text = .Item("Gender") & ""
            '最大借阅册数
            txtMaxNum.Text = .Item("MaxNumber") & ""
            '最大借阅天数
            txtMaxTime.Text = .Item("MaxTime") & ""
        End With
        '设置信息输入框和操作按钮可用
        setEnabled(True)
    End Sub

    Private Sub ReaderEdit_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        '在查询模块中,查询出读者后可对其进行编辑,此时生成ReaderEdit类实例时会传入参数:读者ID,此时窗体加载时就要填充读者信息。详细信息请参见读者查询模块
        '窗体加载时,若当前读者ID不为0,则填充读者信息
        If curID <> 0 Then
            txtFindName.Text = getField("Name", "ID=" & curID, "ReaderInfo")
            fullInfo()
            '设置信息输入框和操作按钮可用
            setEnabled(True)
        Else
            '人员为空时,设置信息输入框和操作按钮不可用
            setEnabled(False)
        End If
    End Sub
    Private Function checkData() As Boolean
        '判断读者姓名是否为空
        If txtName.Text.Trim = "" Then
            ErrorMSG("读者姓名不允许为空!")
            Return False
        End If
        '判断读者性别是否为空
        If cmbGender.Text.Trim = "" Then
            ErrorMSG("读者性别不允许为空!")
            Return False
        End If
        '判断最大借阅册数是否为空
        If txtMaxNum.Text.Trim = "" Then
            ErrorMSG("最大借阅册数不允许为空!")
            Return False
        Else
            '判断最大借阅册数是否为数字
            If Not IsNumeric(txtMaxNum.Text.Trim) Then
                ErrorMSG("最大借阅册数必须为数字!")
                Return False
            End If
        End If
        '判断最大借阅天数是否为空
        If txtMaxTime.Text.Trim = "" Then
            ErrorMSG("最大借阅天数不允许为空!")
            Return False
        Else
            '判断最大借阅天数是否为数字
            If Not IsNumeric(txtMaxTime.Text.Trim) Then
                ErrorMSG("最大借阅天数必须为数字!")
                Return False
            End If
        End If
        Return True
    End Function
    '设置控件的可用性
    Private Sub setEnabled(ByVal enable As Boolean)
        btnUpdate.Enabled = enable
        btnDelete.Enabled = enable
        txtName.Enabled = enable
        cmbGender.Enabled = enable
        txtMaxNum.Enabled = enable
        txtMaxTime.Enabled = enable
    End Sub
    Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExit.Click
        Me.Close()
    End Sub
End Class

⌨️ 快捷键说明

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