判断输入信息是否为空

简介:        在机房收费系统中,我们需要对文本框和组合框重复进行判断,确保不为空;该判断有两种情况,第一种,判断窗体中所有文本框组合框是否为空,第二种,判断一部分文本框,组合框是否为空。
       在机房收费系统中,我们需要对文本框和组合框重复进行判断,确保不为空;该判断有两种情况,第一种,判断窗体中所有文本框组合框是否为空,第二种,判断一部分文本框,组合框是否为空。对于卡号和学号等我们需要判断用户输入的是否是数字,几乎每个窗体都需要进行相类似的判断,一个一个去写,熟悉了代码没错,可是,这个方法似乎不是那么聪明哈,这个时候,我们就可以定义一个类,专门用来进行判断,使用该功能的窗体直接调用类中的方法即可。接下来,简单介绍一下,该如何实现。

       首先,判断窗体中所有文本框、组合框是否为空;

        

<span style="font-size:18px;">Imports System.Windows.Forms

'**********************************************
'文 件 名: verdict
'命名空间: UI
'内    容:
'功    能: 判断用户输入是否为空,判断输入的用户名等一系列是数字的文本框是否是数字
'文件关系:
'作    者:丁国华
'小    组:宝贝计划
'生成日期: 2014/8/5 10:32:09
'版本号:V2.0
'修改日志:
'版权说明:
'**********************************************

Public Class verdict
    ''' <summary>
    ''' 判断窗体中所有文本框、组合框输入内容是否为空,若窗体中有允许为空的文本框或组合框,  
    '''则不能使用此函数 
    ''' </summary>
    ''' <param name="frm"></param>
    ''' <returns></returns>
    ''' <remarks></remarks>
    Public Shared Function IsAllEmptyText(ByVal frm As Form) As Boolean
        Dim control As New Control
        For Each control In frm.Controls '遍历窗体中所有的控件  
            If TypeOf control Is TextBox Then '判断控件是不是文本框  
                If control.Text.Trim = "" Then '判断文本框内容是否为空  
                    MsgBox(control.Tag.ToString + "不能为空!", vbOKOnly, "温馨提示")
                    control.Focus()
                    Return True
                    Exit Function
                End If
            ElseIf TypeOf control Is ComboBox Then '判断控件是不是组合框  
                If control.Text.Trim = "" Then
                    MsgBox(control.Tag.ToString + "不能为空!", vbOKOnly, "温馨提示")
                    Return True
                    Exit Function
                End If
            End If
        Next

        Return False
    End Function</span>
        接着,判断一部分文本框、组合框是否为空;

         

<span style="font-size:18px;"> ''' <summary>
    ''' 判断控件数组中的控件的Text属性是否为空  
    ''' </summary>
    ''' <param name="arrayControl"></param>
    ''' <returns></returns>
    ''' <remarks></remarks>
    Public Shared Function IsSomeEmptyText(ByVal arrayControl() As Control) As Boolean
        Dim control As New Control

        For Each control In arrayControl '遍历数组中所有元素  
            If TypeOf control Is TextBox Then '判断控件是不是文本框  
                If control.Text.Trim = "" Then '判断文本框内容是否为空  
                    MsgBox(control.Tag.ToString + "不能为空!", vbOKOnly, "温馨提示")
                    control.Focus()
                    Return True
                    Exit Function
                End If
            ElseIf TypeOf control Is ComboBox Then '判断控件是不是组合框  
                If control.Text.Trim = "" Then
                    MsgBox(control.Tag.ToString + "不能为空!", vbOKOnly, "温馨提示")
                    Return True
                    Exit Function
                End If
            End If
        Next
        Return False
    End Function</span>
          最后,判断是否为数字;

          

<span style="font-size:18px;"> ''' <summary>
    ''' 判断输入的是否为数字
    ''' </summary>
    ''' <param name="arrayControl"></param>
    ''' <returns></returns>
    ''' <remarks></remarks>
    Public Shared Function IsNumberic(ByVal arrayControl() As Control) As Boolean
        Dim control As New Control
        For Each control In arrayControl '遍历数组中所有元素  
            If TypeOf control Is TextBox Then '判断控件是不是文本框  
                'If control.Text.Trim = "" Then '判断文本框内容是否为空  
                If IsNumeric(control.Text) = False Then
                    'MsgBox(control.Tag.ToString + "不能为空!", vbOKOnly, "温馨提示")
                    MsgBox(control.Tag.ToString + "   " + "请输入数字", vbOKOnly, "提示")
                    control.Focus()
                    control.Text = ""
                    Return False
                    Exit Function
                End If
            End If
        Next
        Return True
    End Function</span>
         紧接着,我们以机房收费系统中,基本数据设定为例,看看我们是如何进行调用的;

        

<span style="font-size:18px;">        Dim arrayControl() As Control
        ReDim Preserve arrayControl(4)
        arrayControl(0) = txtRate
        arrayControl(1) = txtUnittime

        arrayControl(2) = txtLeasttime
        arrayControl(3) = txtPretime
        arrayControl(4) = txtLimitcash
        If verdict.IsSomeEmptyText(arrayControl) Then
            Exit Sub
        End If
        If verdict.IsNumberic(arrayControl) = False Then
            Exit Sub
        End If</span>
         把公共需要使用的部分,抽象出来写成一个类,其余的窗体直接进行调用,这样方便,简单,第二版机房收费系统,未完,待续......

 

目录
相关文章
|
5月前
|
算法 前端开发
3039. 进行操作使字符串为空
3039. 进行操作使字符串为空
49 0
|
11月前
|
JSON 小程序 JavaScript
小程序根据返回值是否为空判断标签是否显示
小程序根据返回值是否为空判断标签是否显示
86 0
|
10天前
|
前端开发 JavaScript
判断数组为空的方法有哪些?
本文介绍了多种判断数组是否为空的方法,包括使用 `length` 属性、隐式类型转换、`toString()`、`join()`、`every()`、`reduce()`、`filter()`、`some()` 方法以及循环。每种方法都有其适用场景,其中使用 `length` 属性和隐式类型转换最为常见和简单。文章首发于微信公众号“前端徐徐”。
18 2
判断数组为空的方法有哪些?
|
5月前
|
机器学习/深度学习 弹性计算 运维
判断用户输入的是 Yes 或 NO
【4月更文挑战第29天】
39 1
|
5月前
|
弹性计算 运维 Shell
判断管理员(字符串)
【4月更文挑战第29天】
42 2
|
5月前
|
C语言
C判断
C判断
39 0
|
5月前
|
算法 前端开发 索引
判断对象是否为空
判断对象是否为空
55 0
整数值比较判断登录系统用户
整数值比较判断登录系统用户
43 0
|
算法
输入年、月,判断该月有多少天
输入年、月,判断该月有多少天
127 0
|
前端开发
你真的会判断对象是否为空吗?
一个小小的判空,却很可能让你吃了大亏,如果一个判空没有做好,那么里面的逻辑就完全裸露了,相信你一定吃过 `NullPointerException` 的苦头!
115 0