手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>程序设计>VB>列表

大小写互换的三种方法

来源:互联网 作者:west263.com 时间:2008-02-23
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
方法一:用VB的函数LCase和UCase

用三个TextBox来展现一下这两个函数的大小写转换功能[运行之前在TextBox1中输入几个大写字母,也可混合输入]:
Private Sub Command1_Click()
Text2.Text = LCase(Text1.Text) '将Text1的文本全换成小写
Text3.Text = UCase(Text2.Text) '将Text1的文本全换成大写
End Sub
说明:
LCase仅将是大写的转换为小写,UCase则仅将是小写的转换为大写,故当字符串中有其它不符合转换的内容时将对其忽略。可以在TextBox1中输入汉字、阿拉伯数字等观察效果。

方法二:用API函数

user32提供两个用于大小写转换的API函数:Charlower[大写-小写]、Charupper[小写-大写],其原形分别为:
Declare Function CharLower Lib "user32" Alias "CharLowerA" (ByVal lpsz As String) As Long
Declare Function CharUpper Lib "user32" Alias "CharUpperA" (ByVal lpsz As String) As Long

继续用三个文本框来观察效果:
Private Sub Command1_Click()
Dim a As String
a = Text1.Text '给变量赋初值
CharUpper a '变为大写
Text2.Text = a
CharLower a '变为小写
Text3.Text = a
End Sub
说明:与方法一的效果完全一样。实际上,VB的LCase和UCase函数调用的也就是这两个API函数,是封装了这两个API函数的内部函数。

方法三:用算法
可以利用Ascii码对大小写字母字符代码的定义来强制输入的字母只能为大写的或者小写的,而不管Caps Lock键是打开的还是关闭的。就象安装Windows时用户输入CD-KEY一样。请看:
Private Sub Text1_KeyPress(KeyAscii As Integer)
'输入的字母通通为小写
If KeyAscii > 64 And KeyAscii < 91 Then KeyAscii = KeyAscii 32
End Sub

Private Sub Text2_KeyPress(KeyAscii As Integer)
'输入的字母通通为大写
If KeyAscii > 96 And KeyAscii < 123 Then KeyAscii = KeyAscii - 32
End Sub
说明:在Ascii字符集里,大写A--Z对应于字符代码65--90,小写a--z对应于97--122。以A为例,小写a[95]与大写A[65]的字符代码相差32,其它字母也是如此。当然可以借此编制一个函数来完成象方法一、二一样将字符串进行大小写互换,略显复杂些,也没什么必要。

上一篇: 统计字数
下一篇: 在VB5中将英文字母及阿拉伯数字旋转任意角度

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!