1. 程式人生 > >推斷輸入信息是否為空

推斷輸入信息是否為空

tex rem 元素 textbox statistic ber verdi 組合框 content

? ? ? ?在機房收費系統中。我們須要對文本框和組合框反復進行推斷,確保不為空;該推斷有兩種情況,第一種,推斷窗口中全部文本框組合框是否為空,另外一種,推斷一部分文本框,組合框是否為空。對於卡號和學號等我們須要推斷用戶輸入的是否是數字。差點兒每一個窗口都須要進行相相似的推斷。一個一個去寫,熟悉了代碼沒錯,但是,這種方法似乎不是那麽聰明哈,這個時候,我們就能夠定義一個類,專門用來進行推斷,使用該功能的窗口直接調用類中的方法就可以。接下來,簡介一下。該怎樣實現。

? ? ? ?首先,推斷窗口中全部文本框、組合框是否為空;

? ? ? ??

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

‘**********************************************
‘文 件 名: verdict
‘命名空間: UI
‘內    容:
‘功    能: 推斷用戶輸入是否為空。推斷輸入的username等一系列是數字的文本框是否是數字
‘文件關系:
‘作    者:丁國華
‘小    組:寶貝計劃
‘生成日期: 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>
? ? ? ? ?把公共須要使用的部分,抽象出來寫成一個類,其余的窗口直接進行調用。這樣方便,簡單。第二版機房收費系統。未完。待續......

?

推斷輸入信息是否為空