When a procedure can operate on multiple types of controls, youcan use VB’s TypeOf function to determine a control type at runtime:
Function myFunc(ctl as Control) ' This code works in both VB3 & VB4 If TypeOf ctl Is TextBox Then ' Code for text boxes here? ElseIf TypeOf ctl Is CommandButton _ Then ' Code for command buttons here? End ifEnd Function
VB4 adds the new TypeName function, which allows you to test thecontrol’s type once, then branch based on the result:
Function myFunc(ctl As Control) Dim sCtlType as String ' TypeName is new to VB4 sCtlType = TypeName(ctl) Select Case sCtlType Case "TextBox" ' Code for text boxes here? Case "CommandButton" ' Code for command buttons 'here? End Select End Function
To learn the type (or class) name of a given control, highlightit at design time and look at VB’s Properties window. The typename appears to the right of the control’s name in the combo boxat the top of the window.