?? readeredit.vb
字號:
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 + -