机房收费系统之减少代码冗余(快速清空文本框、限制字符且清空)

机房收费系统中有很多都是重复的代码,代码冗余很严重,降低了代码利用率,也浪费自己的时间去敲重复的代码。所以我们为什么不想一个办法去解决这个问题呢。懒是发明的第一推动力。

一、快速清空文本框、下拉框等等。

在清空按钮中写以下代码

Private Sub cmdClear_Click()
    
   'Controls 集合是表示窗体或容器控件上的控件的元素的集合。
    Dim ctrl As Control
    
    '用到了For...Next循环
    For Each ctrl In Me.Controls
        If TypeOf ctrl Is TextBox Then '是否为文本框TextBox
        ctrl.Text = ""
        End If
    Next
    
    For Each ctrl In Me.Controls
        If TypeOf ctrl Is ComboBox Then '是否为下拉框comboBox
        ctrl.Text = ""
        End If
    Next
    
End Sub

 解释: 

1.Controls 集合是表示窗体或容器控件上的控件的元素的集合。

2.用到了For...Next循环,判断控件类型

3.若是还想清空其他控件,将TextBox或者ComboBox改成你想清空的控件就行。

二、限制字符只能为数字且长度不超过6位(普遍使用于学号、卡号、金额)

添加一个模块,在模块中写以下代码

Option Explicit

Public X As Integer     '文本框的字符长度
Public T As String      '在模块中替代文本框
Public b As Boolean     '打标签,做一个判断

Public Function text_KeyPress(KeyAscii As Integer)

     '限制字符,数字
    If KeyAscii >= 48 And KeyAscii <= 57 Or KeyAscii = 8 Then
        Else
           KeyAscii = 0
     End If
    
    '判断文本框长度
    If X > 5 Then
        KeyAscii = 0
        MsgBox "字数超出 ", 64, "温馨提示:"
        T = ""
        b = True
    End If

End Function

在文本框的KeyPress事件中写以下代码

Private Sub txtCardNo_KeyPress(KeyAscii As Integer)
     
    '将文本框的长度传给X
     X = Len(txtCardNo.Text)
    Call mdlKeyPress.text_KeyPress(KeyAscii)
    '标签
    If b = True Then
        txtCardNo.Text = T
        b = False
    End If
   
End Sub

解释:文本框的长度只有两种可能,一种以X<5,一种是X≥5;标签b的默认值为False,当X≥5时,b=True,清空文本框。

三、快速下拉框添加内容(For...Next循环、控件数组)

'打开窗体时的加载内容
For i = 0 To 2
    comboField(i).AddItem "教师"
    comboField(i).AddItem "注册日期"
    comboField(i).AddItem "注册时间"
    comboField(i).AddItem "注销日期"
    comboField(i).AddItem "注册时间"
    comboField(i).AddItem "机器名"
   
  Next
  
 For j = 0 To 2
    comboOpSign(j).AddItem ">"
    comboOpSign(j).AddItem "<"
    comboOpSign(j).AddItem "="
    comboOpSign(j).AddItem "<>"
Next j

For n = 0 To 1
    comboCombineRelation(n).AddItem "与"
    comboCombineRelation(n).AddItem "或"
Next n

结语:磨刀不误砍柴工,懒是发明的第一推动力。

发布了24 篇原创文章 · 获赞 1 · 访问量 3209

猜你喜欢

转载自blog.csdn.net/promsing/article/details/104048428