标题:在textbox中,有没有限制(数量,中文,英文)的代码?
只看楼主
liufj12
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-3-4
 问题点数:0 回复次数:22 
在textbox中,有没有限制(数量,中文,英文)的代码?

如题,就像注册账号时,账号名只能输入英文,密码必需大于8位,且必需英文或数字

搜索更多相关主题的帖子: textbox 英文 数量 中文 代码 
2006-03-11 10:45
wsn
Rank: 2
等 级:新手上路
威 望:5
帖 子:321
专家分:0
注 册:2006-2-9
得分:0 

Text1.IMEMode = 3就不能输入中文了,但可以粘


已婚男人!没事请勿打扰·老婆格言:①不准對她耍酷 ②不准讓她吃醋 ③吵架我要讓步 ④揍我我要挺住⊙⊙
2006-03-11 10:49
liufj12
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-3-4
得分:0 
那么,限制英文的呢?还有取消复制,粘贴的有没有啊
2006-03-11 10:54
liufj12
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-3-4
得分:0 
没人知道吗?
2006-03-11 11:05
purana
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:广东-广州
等 级:版主
威 望:66
帖 子:6039
专家分:0
注 册:2005-6-17
得分:0 

Option Explicit

Private Sub Command1_Click()
Dim i As Integer
Dim UCharUserName As String
Dim UCharPassword As String
If Text1.Text <> "" Then '检查用户名
UCharUserName = UCase$(Text1.Text)
For i = 1 To Len(UCharUserName)
If Mid$(UCharUserName, i, 1) >= "A" And Mid$(UCharUserName, i, 1) <= "Z" Then
'输入正确
Else
MsgBox "输入错误,请输入英文字母"
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
Text1.SetFocus
Exit Sub
End If
Next
Else
MsgBox "请输入用户名"
Exit Sub
End If

If Text2.Text <> "" Then '检查密码
UCharPassword = UCase$(Text2.Text)
For i = 1 To Len(UCharPassword)
If Mid$(UCharPassword, i, 1) >= "A" And Mid$(UCharPassword, i, 1) <= "Z" Or IsNumeric(Mid$(UCharPassword, i, 1)) Then
'输入正确
Else
MsgBox "输入错误,请输入英文或数字"
Text2.SelStart = 0
Text2.SelLength = Len(Text2.Text)
Text2.SetFocus
Exit Sub
End If
Next
Else
MsgBox "请输入密码"
Exit Sub
End If
MsgBox "输入正确"
End Sub


我的msn: myfend@
2006-03-11 11:13
liufj12
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-3-4
得分:0 

楼上的,你真是太聪明了,问你什么都知道

2006-03-11 11:59
liufj12
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-3-4
得分:0 
  可我上面的代码有写看不懂,能稍微解释一下吗?
2006-03-11 12:01
辉少
Rank: 1
等 级:新手上路
威 望:2
帖 子:147
专家分:7
注 册:2005-8-25
得分:0 

keydown 判断 ascii 码如果ascii 码在 asc("a")到asc("z")和asc("A")到asc("Z")之间就是英文了
判断中文的就更加简单了只要判断 ascii 码是否负数就行了
(if sgn(keycode)=-1[判断是否为负数] then keycode=0 [限制输入])
至于判断数字的 判断ascii 是否在 asc("1")到asc("0")就行了
但是要记住一定要在keydown 处判断并用 keycode=0 限制输入


辉少QQ:469781880 博客:http:///bbs/boke.asp?25189.index.html
2006-03-11 12:23
purana
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:广东-广州
等 级:版主
威 望:66
帖 子:6039
专家分:0
注 册:2005-6-17
得分:0 

Option Explicit

Private Sub Command1_Click()
Dim i As Integer
Dim UCharUserName As String
Dim UCharPassword As String
If Text1.Text <> "" Then '检查用户名
UCharUserName = UCase$(Text1.Text) '将文本框里的字符转换成大写
For i = 1 To Len(UCharUserName)
If Mid$(UCharUserName, i, 1) >= "A" And Mid$(UCharUserName, i, 1) <= "Z" Then '判断是否是A到Z之间的英文字母
'输入正确
Else
MsgBox "输入错误,请输入英文字母"
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
Text1.SetFocus
Exit Sub
End If
Next
Else
MsgBox "请输入用户名"
Exit Sub
End If

If Text2.Text <> "" Then '检查密码
UCharPassword = UCase$(Text2.Text) '将文本框里的字符转大字
For i = 1 To Len(UCharPassword)
If Mid$(UCharPassword, i, 1) >= "A" And Mid$(UCharPassword, i, 1) <= "Z" Or IsNumeric(Mid$(UCharPassword, i, 1)) Then '判断是否为A到Z之间的字母或数字
'输入正确
Else
MsgBox "输入错误,请输入英文或数字"
Text2.SelStart = 0
Text2.SelLength = Len(Text2.Text)
Text2.SetFocus
Exit Sub
End If
Next
Else
MsgBox "请输入密码"
Exit Sub
End If
MsgBox "输入正确"
End Sub


我的msn: myfend@
2006-03-11 12:24
xinfresh
Rank: 4
等 级:贵宾
威 望:13
帖 子:594
专家分:0
注 册:2006-1-13
得分:0 
purana不如照辉少的,在Keypress的时候检查,我觉得那样效果好一点

E-mail:xinfresh@QQ:383094053校内:http:///getuser.do?id=234719042
2006-03-11 20:28



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-49718-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.162821 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved