我们在做机房收费系统的时候,很多情况下都要判断文本框是否为空,那接下来我们看看在vb.net中我们怎么判断文本框、组合框是否为空。
一、遍历窗体中有多少个文本框,这时我们用For Each循环语句,先判断所有文本框是否为空
Public Shared Function IsAllEmptyText(ByVal frm As Form) As Boolean Dim control As New Control For Each control In <span style="font-family:Consolas, Courier New, Courier, mono, serif;"><span style="line-height: 18px;">arrayConcrol</span></span> '遍历窗体中所有的控件 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>
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>
Dim empty As New UI.IsEmptyText ’调用判断文本框是否为空的方法 Dim arrayControl() As Control ’定义一个数组,将窗体中文本框的信息放入数组中 ReDim Preserve arrayControl(1) ’数组的总数 arrayControl(0) = txtUserName arrayControl(1) = txtPassword If empty.IsAllEmptyText(arrayControl) Then Exit Sub End If
这样就可以轻松判断文本框是否为空,不过有点不方便的就是for each遍历是从最后一个往上遍历窗体中的文本框是否为空!