检查用户输入信息是否完整(vb.net实现)

前端之家收集整理的这篇文章主要介绍了检查用户输入信息是否完整(vb.net实现)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

机房收费系统中,在将用户输入的信息封装到实体中作为参数传到B层之前,总要对用户输入的信息进行检查。我将这样的检查分为两类:

  • 合法性检查
  • 完整性检查

所谓合法性检查,就是用户输入的信息是否格式正确,或者是否为规定的数字或字符。而完整性检查,则是用户输入的信息是否完整,是否有漏填的。

这里我只介绍一下自己是如何实现用户输入信息的完整性检查的。

思路:

因为凡是需要用户输入信息的窗体,都需要进行完整性检查。而这个功能的实现只需要写一个函数即可。这个函数可以为多个窗体调用,所以将它写到模块中。

最开始的时候,并没有直接写代码,而是写注释。注释内容为:

这个函数的参数为一个实例化的窗体,返回值为Boolean值

  • 先判断窗体中的控件是否为TextBox或ComboBox
  • 如果是这两类控件,就判断它们的Text属性是否为空
  • 如果为空,弹出消息框提示,返回False
  • 如果不为空,返回True

实现:

Imports System.Windows.Forms
    ''' <summary>
    ''' 检查用户输入是否完整,是否有漏填的
    ''' </summary>
    ''' <returns></returns>Boolean值
    ''' <remarks></remarks>
    Function CheckIntegrity(ByVal myfrm As Windows.Forms.Form) As Boolean
        
        Dim i As Integer

        For i = 0 To myfrm.Controls.Count - 1
            If TypeOf myfrm.Controls.Item(i) Is ComboBox Or TypeOf myfrm.Controls.Item(i) Is TextBox Then

                If Trim(myfrm.Controls.Item(i).Text) = "" Then
                    MsgBox("请检查您的输入是否完整!",MsgBoxStyle.Information,"温馨提示")
                    myfrm.Controls.Item(i).Focus()
                    Return False
                    Exit Function
                End If

            End If
        Next

        Return True

    End Function


感想:

最开始的时候想用myfrm.Container.Components.Item(i).GetType.ToString()="System.Windows.Forms.TextBox",但是Components.Item(i)没有Text属性,所以后来用到了Controls,用myfrm.Controls.Item(i).GetType.ToString()="System.Windows.Forms.TextBox"不知道为什么总是不相等(用Trim也不可以),虽然和上述代码比起来,这个显得有些繁琐,但是由于开始没有引用命名空间System.Windows.Forms,所以TypeOf,ComboBox,TextBox这些都不能直接使用,还是费了一些周折。

不知道上述的函数算不算一个好的函数,但是在重构过程中,应该要尽量想着优化,要增加自己写的代码的可复用性,减少代码的重复。

原文链接:https://www.f2er.com/vb/257984.html

猜你在找的VB相关文章