学生管理系统-优化篇

优化1:当记录集空后,不令其报错,而是设置系统提示,且提示后控件不可用

    Dim txtSQL As String
    Dim MsgText As String
    Dim i As Integer
    Dim mrccc As ADODB.Recordset

    '查询语句
    txtSQL = "select * from Student_Info "
    '将查询结果放入记录集中
    Set mrc = ExecuteSQL(txtSQL, MsgText)

    If mrc.EOF = True Then
        MsgBox "没有记录了,请添加后再试!", 0 + 48, "提示"

        Frame1.Enabled = False
        Frame2.Enabled = False

优化2:在修改信息界面的combo控件中,调用数据库内的信息
查询不同的数据库,需要定义多个不同的记录集

        txtSQL = "select * from class_info"
        Set mrccc = ExecuteSQL(txtSQL, MsgText)

        '若有记录,继续
        If mrccc.EOF = True Then
            MsgBox "没有记录了,请先添加后再试!", 0 + 48, "提示"
        Else

            For i = 1 To mrccc.RecordCount
                comboClassNo.AddItem mrccc.Fields(0)
                '移动到下一条记录
                mrccc.MoveNext
            Next i
        End If

优化3:使combo控件无法打字只可以选择

设置combolist控件的style属性为2,并将代码中“combo***.text=””删去”

优化4:修改信息界面,时间改为日历模式,入学时间不得低于出生时间

Private Sub Form_Click()
    MonthView1.Visible = False
    MonthView2.Visible = False
End Sub
    Private Sub cmdUpdate_Click()
    Dim txtSQL As String
    Dim MsgText As String
    Dim mrcc As ADODB.Recordset
    ...(中间省略若干代码)
    If Trim(txtRudate.Text) < Trim(txtBorndate.Text) Then
        MsgBox "入学日期小于出生日期!", vbOKOnly + vbExclamation, "警告"
        Exit Sub
    End If

优化5:文本框内设置限制字数,防止数据库溢出报错
直接在代码处输入*.MaxLength=要限制的数字数

优化6:设置年级课程信息中,点击一次“设置课程”按钮后,该按钮禁用,避免出现多次重复的情况

优化7:查询学籍信息中,电话栏的部分显示不全
首先在cmdIInquire_Click()事件中写入MSHFlexgrid.ColAlignment=4,将数据居中显示,再将显示电话栏的对应字段去掉空格(trim())

With MSHFlexgrid
.ColAlignment = 4
.TextMatrix(.Rows - 1, 5) = Trim(mrc.Fields(5))

优化8:使textbox控件有输入限制:“只能输入…”

添加KeyPress事件:

Private Sub txtUserName_KeyPress(KeyAscii As Integer)
    Select Case KeyAscii
        Case 48 To 57
        Case 8
    Case Else
        KeyAscii = 0
        MsgBox "只能输入数字!", vbOKOnly + vbExclamation, "警告"
        txtUserName.Text = ""
    End Select
End Sub
Private Sub txtName_KeyPress(KeyAscii As Integer)
    Select Case KeyAscii '禁止输入数字和特殊字符
        Case 65 To 90
        Case 97 To 122
        Case 44
        Case 46
        Case 13
        Case 8
    Case Else
        KeyAscii = 0
        MsgBox "只能输入字母!", 0 + 48, "警告"
    End Select
End Sub

猜你喜欢

转载自blog.csdn.net/Marshallren/article/details/81604793
今日推荐