Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: VB5,VB6
Expertise: Intermediate
Apr 20, 1999



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Enum constants that include spaces

If you're writing an ActiveX control, you can create properties that return an enumerated value, as in:

Public Enum SizeConstants
    SizSmall = 1
End Enum
Public Size As SizeConstants
When another developer is using your control, an enumerated property appears in the Property Window at design time as a combo box that contains all the constants you have defined in the Enum structure ("SizSmall", "SizMedium" and "SizLarge", in this case). What if you wish to add more descriptive names, that include spaces and other punctuation symbols? For instance, this is what Visual Basic itself does for a few property such as DrawMode (that exposes constants named "Copy Pen" or "Not Merge Pen"). Apparently these names would be rejected by the Visual Basic, but you can use them if you enclose their name between square brackets:

Public Enum SizeConstants
    [Small Size] = 1
    [Medium Size]
    [Large Size]
End Enum
A warning: if you use this trick, you must use the square brackets when referring to the constants in your code, both from within your ActiveX control project and in the client project:

MyControl.Size = [Medium Size]
Francesco Balena
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date