在很多Web页面的表单中(比如在线注册等),都带有“Clear”或“Reset”按钮用来清除表单文本域的所有内容,以便用户重新填写。在Visual Basic的窗口中,我们也可以完成类似的功能,比如清除窗口中所有TextBox控件中的内容。
要完成这一功能,我们需要使用窗口的控件类集(Controls collection)。该类集包含了窗口内的所有控件。通过在类集内循环以及采用TypeOf关键字,我们可以确定窗口内的任意一个控件。在本例中,如果控件是TextBox,我们可以执行清除内容的命令,如果不是TextBox,我们就忽略对其的处理。
以下就是在一个窗口中清除TextBox控件内容的代码:
Public
Sub ClearTextBoxes()
Dim c As Control
For Each c in Controls
If TypeOf s Is TextBox Then
c.Text = ""
End If
Next
End Sub
同样,我们可以把该代码扩展到任意控件。比如,以下代码会清除(取消选择)窗口内所有CheckBox控件的值:
For Each c In Controls
If TypeOf c Is CheckBox Then
c.Value = False
End If
Next