vb的textbox如何限制输入的字节数呀?

有可能文本框中会有数字、英文、汉字的组合,要求文本框只能输入指定的字节数,怎样才能实现呀,请高手指点。补充:VB提供的maxlength的属性是没有办法实现的。... 有可能文本框中会有数字、英文、汉字的组合,要求文本框只能输入指定的字节数,怎样才能实现呀,请高手指点。
补充:VB提供的maxlength的属性是没有办法实现的。
展开
 我来答
Gerald_Bond
2008-09-21 · TA获得超过1003个赞
知道小有建树答主
回答量:590
采纳率:0%
帮助的人:606万
展开全部
在KeyPress中加入:
If KeyAscii=8 Then Exit Sub '按的是删除键则不处理
If LenB(Text1.Text)+IIf(KeyAscii<0,2,1)>限定字节数 Then KeyAscii=0 '当KeyAscii<0时输入的是两字节的字符(如汉字)
lxz1969
2008-09-20 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8524
采纳率:33%
帮助的人:1.1亿
展开全部
给你一个简单的办法:
Private Sub Text1_Change()
Dim L As Integer, i As Integer
For i = 1 To Len(Text1.Text)
If Asc(Mid(Text1.Text, i, 1)) > 0 Then
L = L + 1
Else
L = L + 2
End If
Next i
If L > 10 Then MsgBox "输入长度超标!"
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
43295811
2008-09-20 · TA获得超过1529个赞
知道大有可为答主
回答量:1701
采纳率:0%
帮助的人:2045万
展开全部
Option Explicit

Private Sub Text1_KeyPress(KeyAscii As Integer)
Dim strD As String
strD = StrConv(Text1, vbFromUnicode)
If LenB(strD) >= 8 Then KeyAscii = 0'假如限定8个字节,注意英汉搭配时,字节数的限定
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cwa9958
2008-09-20 · TA获得超过1885个赞
知道大有可为答主
回答量:2504
采纳率:0%
帮助的人:2014万
展开全部
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 8 Then Exit Sub
If LenB(Text1) >= 4 Then KeyAscii = 0

End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友4b636fa
2008-09-20 · TA获得超过1237个赞
知道小有建树答主
回答量:866
采纳率:100%
帮助的人:1398万
展开全部
只能输入 4 字节数的例子:

Private Sub Text1_Change()
Dim nStr As String
nStr = Text1.Text '假如是: "12控件"
nStr = StrConv(nStr, vbFromUnicode)
nStr = LeftB(nStr, 4)
Text1.Text = StrConv(nStr, vbUnicode) '返回:12控
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式