zoukankan      html  css  js  c++  java
  • 检查用户输入信息是否完整(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这些都不能直接使用,还是费了一些周折。

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

  • 相关阅读:
    git stash 一个场景 mark
    sendBeacon 使用
    【踩坑笔记】layui之单选和复选框不显示
    wordpress后台管理超时没反应:load-scripts.php载入缓慢出错
    MySQL_Sql_打怪升级_进阶篇_测试: SQL随机生成测试数据
    MySQL_Sql_打怪升级_进阶篇_测试: 游标应用
    MySQL8.0新特性_01_JSON数据格式的支持
    MySQL_Sql_打怪升级_进阶篇_进阶19: 函数
    MySQL_Sql_打怪升级_进阶篇_进阶18: 存储过程
    MySQL_Sql_打怪升级_进阶篇_进阶17: 变量
  • 原文地址:https://www.cnblogs.com/yxysuanfa/p/6733331.html
Copyright © 2011-2022 走看看