Microsoft KB Archive/97141

= How to Right Justify Standard Numbers in a Masked Edit Field =

Article ID: 97141

Article Last Modified on 10/30/2003

-

APPLIES TO


 * Microsoft Visual Basic 3.0 Professional Edition
 * Microsoft Visual Basic 3.0 Professional Edition

-



This article was previously published under Q97141



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 &quot;__300&quot; instead of &quot; 300.&quot;

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:


 * 1) Create a string of underscore characters that matches the length of the mask in the Masked edit control.
 * 2) 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.
 * 3) 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, &quot;_&quot;) = 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), &quot;_&quot;) &        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.</li></ol>

Additional query words: 2.00 3.00 alignment align right-align

Keywords: KB97141

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.