The information in this article applies to:
- Standard and Professional Editions of Microsoft Visual Basic for
Windows, versions 2.0 and 3.0
SUMMARY
The Masked edit control does not provide a method to right justify numbers.
Ordinary methods and the Format$ function do not work because the Masked
edit control uses the underscore character to represent blanks in the text
property. For example, if 300 is entered in a Masked edit field with a mask
of #####, the text property would contain "__300" instead of " 300."
However, you can use the technique described in this article to right
justify a Masked edit field using a standard number mask and format. This
is done in three steps:
- Create a string of underscore characters that matches the length of the
mask in the Masked edit control.
- Concatenate the text entered in the Masked edit control to the end of'
the underscore string. This result is a string longer than the mask of
the Masked edit control.
- Use the Right$ function to remove the extra underscore characters from
the beginning of the string.
MORE INFORMATION
The following example demonstrates this process:
- Start a new project in Visual Basic. Form1 is created by default.
- Add the MSMASKED.VBX control to the project.
- Create the following controls on Form1, and assign the indicated
properties:
Default Name Caption Mask Format
------------------------------------------------
MaskedEdit1 (Not applicable) #### ####
Command1 Right Justify
- Add the following code to the Command1_Click event:
' Ensure that the string is not already right-justified.
If InStr((Len(MaskedEdit1.Text)), MaskedEdit1.Text, "_") =
Len(MaskedEdit1.Text) Then
' The first String$ function creates the underscore string. The
' Format$ trims the text property of the MaskedEdit control.
' Enter the following two lines as one, single line:
MaskedEdit1.text = Right$(String$(Len(MaskedEdit1.Text), "_") &
Format$(Val(MaskedEdit1.Text)), Len(MaskedEdit1.Text))
End If
- Press the F5 key to run the program.
- Enter two numbers into the Masked edit field, and click the Right
Justify button. Notice that the numbers are right-justified in the
field.