机房收费系统——优化中的部分内容

来源:互联网 发布:各国人工智能发展现状 编辑:程序博客网 时间:2024/06/03 11:04

修改密码

修改密码流程为旧(新)密码是否输入,旧密码是否正确,修改密码并退出当前登录,注意密码的输入不能是特殊字符之类的,然后旧密码不能与新密码一致,限制一下输入长度,就可以了,重点是搞一搞怎么让他修改完了退出当前系统,然后进入登录界面重新登录,其实也挺简单的,加一段代码:

Dim frm As Form

For Each frm In Forms

If frm.Name<> "Login" Then

Unload frm

Login.Show

End If

Next

我的登录窗体名称为“Login”,很简单,就不用解释了吧。将代码放到修改密码后的位置,就可以在修改完密码以后直接退出系统然后直接到登录窗口了。

 

限制文本框输入内容为数字

其实一开始的时候我是这样限制的

If KeyAscii < 48 Or KeyAscii > 57Then

       KeyAscii = 0

End If

但是问题出现了,此时输入了以后无论是回车还是退格或者其他,都不能运行,只能输入数字,连回删都不行,所以有了第二种优化,跟这个类似,如下

If KeyAscii = 8 Then Exit Sub

    Select Case KeyAscii

    Case 48 To 57, 8, 13

    Case Else

        KeyAscii = 0

End Select

这样就可以用了

 

限制文本框的输入长度

讲文本框的maxlenght属性修改为想要的长度就可以了,想要最大输入多少,就限制为多少

 

让Combo 显示一个默认项

首先修改 combo的 style属性为2,然后对窗体加载事件中添加如下代码

Combo1.Text = Combo1.List(0)

因为我是代码添加的combo下拉选项,所以这里面肯定是有第一项的,第一项默认为0,如果想要显示的是第二项就将0改为1就可以了,以此类推

 

输入的时候就判断卡号是否可用

对输入框添加KeyUp事件,即可即时显示卡号是否可用。

Private Sub cardno_KeyUp(KeyCode As Integer, Shift As Integer)
    If Keyascii = 8 Then Exit Sub
    Select Case Keyascii
    Case 48 To 57, 8, 13
    Case Else
        Keyascii = 0
    End Select
    
    Dim txtSQL, MsgText As String
    Dim mrc As ADODB.Recordset
    
    txtSQL = "select * from student_Info where cardno='" & Trim(cardno.Text) & "'"
    Set mrc = ExecuteSQL(txtSQL, MsgText)
    If mrc.EOF Then
        Label1.Caption = "卡号可以使用"
    Else
        Label1.Caption = "卡号不可用"
    End If
    
End Sub


文本框的换行显示

按照下面这个代码的格式写就行

Text1.Text = "abc"   &   vbCrLf   &   "123"

比如我要显示如下内容

姓名:甲乙丙

性别:男

就可以这样写

Text1.Text = "姓名:"  &  “甲乙丙”

Text1.Text = Text1.Text   &  vbCrLf   &   “性别:”   &  “男”

 暂时就先放上来这些,总结一下,其实对于控件的优化也不难,网上都有,而且机房里面有很多都是重复的,(不过可以增加自己的熟练度),我只是把这些东西收集整理了一下而已。

0 0
原创粉丝点击