操作流程:
存盘
输入卡号、学号、姓名等不为空的内容,判定卡号是否在student_info表中存在,是则提示已存在此用户,否则为student_info添加新记录
清空
清空文本框里的所有内容
查找
弹出查询余额窗体
使用数据库表:
student_info(存放学生信息记录)
recharge_info(存放充值记录)
具体代码:
存盘:
Private Sub cmdOFF_Click()
Unload Me
End Sub
Private Sub cmdSave_Click()
'对student_info表操作
Dim mrcstudent As ADODB.Recordset '用于存放记录集
Dim studentSQL As String '用于存放SQL语句
Dim studentMsgText As String '用于存放返回信息
'对Recharge_info表操作
Dim mrcrecharge As ADODB.Recordset '用于存放记录集
Dim rechargeSQL As String '用于存放SQL语句
Dim rechargeMsgText As String '用于存放返回信息
rechargeSQL = "select * from recharge_info"
Set mrcrecharge = ExecuteSQL(rechargeSQL, rechargeMsgText)
studentSQL = "select * from student_info"
Set mrcstudent = ExecuteSQL(studentSQL, studentMsgText)
'限制各个控件不为空
If txtCID.Text = "" Then
MsgBox "请输入卡号!", vbOKCancel + vbExclamation, "警告"
Else
If txtReCharge.Text = "" Then
MsgBox "请输入充值金额!", vbOKCancel + vbExclamation, "警告"
Else
If txtSID.Text = "" Then
MsgBox "请输入学号!", vbOKCancel + vbExclamation, "警告"
Else
If txtStudentName.Text = "" Then
MsgBox "请输入姓名!", vbOKCancel + vbExclamation, "警告"
Else
If comboSEX.Text = "" Then
MsgBox "请选择性别!", vbOKCancel + vbExclamation, "警告"
Else
If txtDepartment.Text = "" Then
MsgBox "请输入系别!", vbOKCancel + vbExclamation, "警告"
Else
If txtGrade.Text = "" Then
MsgBox "请输入年级!", vbOKCancel + vbExclamation, "警告"
Else
If txtClass.Text = "" Then
MsgBox "请输入班级!", vbOKCancel + vbExclamation, "警告"
Else
If comboStatus.Text = "" Then
MsgBox "请选择状态!", vbOKCancel + vbExclamation, "警告"
Else
If comboType.Text = "" Then
MsgBox "请选择类型!", vbOKCancel + vbExclamation, "警告"
Else
'为数据表添加新记录
mrcstudent.AddNew
mrcstudent.Fields(0) = Trim(txtCID.Text)
mrcstudent.Fields(1) = Trim(txtSID.Text)
mrcstudent.Fields(2) = Trim(txtStudentName.Text)
mrcstudent.Fields(3) = Trim(comboSEX.Text)
mrcstudent.Fields(4) = Trim(txtDepartment.Text)
mrcstudent.Fields(5) = Trim(txtGrade.Text)
mrcstudent.Fields(6) = Trim(txtClass.Text)
mrcstudent.Fields(7) = Trim(txtReCharge.Text)
mrcstudent.Fields(8) = Trim(txtExplain.Text)
mrcstudent.Fields(9) = Trim(frmLogin.txtUserName.Text)
mrcstudent.Fields(10) = Trim(comboStatus.Text)
mrcstudent.Fields(11) = "未结账"
mrcstudent.Fields(12) = Date
mrcstudent.Fields(13) = Time
mrcstudent.Fields(14) = Trim(comboType.Text)
mrcstudent.Update
mrcstudent.Close
'为数据表添加新记录
mrcrecharge.AddNew
mrcrecharge.Fields(1) = Trim(txtSID.Text)
mrcrecharge.Fields(2) = Trim(txtCID.Text)
mrcrecharge.Fields(3) = Trim(txtReCharge.Text)
mrcrecharge.Fields(4) = Date
mrcrecharge.Fields(5) = Time
mrcrecharge.Fields(6) = Trim(frmLogin.txtUserName.Text)
mrcrecharge.Fields(7) = "未结账"
mrcrecharge.Update
mrcrecharge.Close
MsgBox "注册成功!", vbOKCancel + vbExclamation, "提示"
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End Sub
查询
Private Sub cmdInquery_Click()
frmBalance.Show
End Sub
清空
Private Sub cmdEmpty_Click()
'清空所有内容
txtCID.Text = ""
txtReCharge = "0.0"
txtSID.Text = ""
txtStudentName.Text = ""
comboSEX.Text = ""
txtDepartment.Text = ""
txtGrade.Text = ""
txtClass.Text = ""
comboStatus.Text = ""
txtExplain.Text = ""
comboType.Text = ""
End Sub
优化:
1.combox控件不可输入
Private Sub comboType_KeyPress(KeyAscii As Integer)
KeyAscii = 0 '不可输入值
End Sub
2.背景图随窗体改变而改变
Dim H As Single '定义窗体高的变量
Dim W As Single '定义窗体高的变量
Private Sub Form_Load()
H = Me.Height
W = Me.Width
End Sub
Private Sub Form_Resize()
Me.Height = H
Me.Width = W
Me.PaintPicture Me.Picture, 0, 0, Me.ScaleWidth, Me.ScaleHeight '实现背景图随窗体变大而改变
End Sub
3.禁止粘贴
Private Sub txtDepartment_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
'不可粘贴
If Button = 2 Then
Clipboard.Clear
End If
End Sub
4.限制字符类型