您的位置:首页 > 其它

机房收费系统--文本框输入限制及技巧

2012-11-30 21:38 260 查看
文本框是一个程序数据输入的关键部件,为了实现对数据输入的规范和数据安全(如果输入不当,例如:输入的数据需要在数据库中处理,数据中含有SQL语句过敏的符号或关键词,就会造成数据库瘫痪,系统瘫痪),所以,就需要我们在文本输入的时候进行一下简单的限制。

我们在使用其他软件的时候,提示只让输入,大小写字母,还有数字,我们通过利用 Kepress 事件来限定。a~z对应的KeyAscii是97~122 。A~Z对应的KeyAscii依次是65~90 数字0~9对应的KeyAscii分别是48~57 然后这样

Private Sub Text1_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
Case 48 To 57                       '数字0-9 可输入
Case 65 To 90                          '字母 A~Z  可输入
Case  97 To 122                        '字母a~z    可输入
Case vbKeyBack, vbKeyDelete         '允许删除
Case Else
KeyAscii = 0                           '其他按键忽略
End Select
End Sub


如果你还想限制输入数据的个数,可以设置Textbox的MaxLength属性为N=你想要的字的个数

这是一个思路,当然我们可以通过判断输入字符,来提醒用户来自行输入合格的数据!也就是说要 判断一下 textbox控件的text了。此时我们需要用到一些熟悉的字符串函数,例如;

1. ASC(X),Chr(X):

转换字符字符码

[格式]:

P=Asc(X) 返回字符串X的第一个字符的字符码

P=Chr(X) 返回字符码等于X的字符

[范例]:

(1)P=Chr(65) ‘ 输出字符A,因为A的ASCII码等于65

(2)P=Asc(“A”) ‘ 输出65

2. Len(X): 计算字符串X的长度

[格式]:

P=Len(X)

[说明]:

空字符串长度为0,空格符也算一个字符,一个中文字虽然占用2 Bytes,但也算一个字符。

[范例]:

(1) 令X=”” (空字符串) Len(X) 输出结果为0

(2) 令X=”abcd” Len(X) 输出结果为4

(3) 令X=”VB教程” Len(X) 输出结果为4

3. Mid(X)函数:读取字符串X中间的字符

[格式]:

P=Mid(X,n) 由X的第n个字符读起,读取后面的所有字符。

P=Mid(X,n,m) 由X的第n个字符读起,读取后面的m个字符。

[范例]:

(1) X=”abcdefg” P=Mid(X,5) 结果为:P=”efg”

(2) X=”abcdefg” P=Mid(X,2,4) 结果为P=”bcde”

等等,还有很多,通过这些函数,我们可以帮助用户检查和转化这些数据,然后用msgbox 进行提醒,这也是一个思路!

当我们提醒完用户后,用户需要修改数据,也就是删除原有的数据,重新输入,这时我们还可以通过代码帮用户全部选中,待他输入的时候,原有数据就会自动被替换掉了,可以这样干:

文本框的名称是text1 这需要使用文本框的属性SelStart和SelLength属性,SelStart表示选择文本的开始,SelLength表示要选中文本的长度,采用以下两句代码就行了。

Text1.SelStart = 0 Text1.SelLength =Len(Text1.Text)

博客地址:http://blog.csdn.net/chenjinge7/article/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: