Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: Visual Basic
Expertise: Intermediate
Aug 6, 1997

A Fast Way to Change Case

Do you need to convert user input to all upper case in VB3? All the ways I have seen to force user input to all upper case is to make calls to the Chr and UCase functions in the variant or string form, in addition to calling the Asc function. Why not use integers only, eliminating calls to these functions? This method is easy because the only difference between lower and upper case letters is bit five. The number 223 conveniently has all bits except bit five:

 
	Lower case a  = 01100001
	Upper case A = 01000001
	Number 223   = 11011111
 
Sub AllUppers (KeyAscii As Integer)
	'If KeyAscii is in range, then
	'perform bit-wise comparison and assign result.
	If KeyAscii > 96 And KeyAscii < 123 Then KeyAscii = _
		(KeyAscii And 223)
End Sub
If you have multiple text controls needing this input, put the Sub in a code module, and call it from the KeyPress event of the Text controls whenever you need it. Similarly, 32 = 00100000, so to convert from upper to lower case, use:
 
If KeyAscii > 64 and KeyAscii < 91 Then KeyAscii = _
	(KeyAscii Or 32)
Kenneth L.
 
Comment and Contribute

 

 

 

 

 


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

 

 

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