VB字符长度到达后不再输入
1个回答
展开全部
VB内部使用Unicode编码格式,在这种编码下,每个中文和每个英文、数字的长度都是一样的,都算作1个字符(按字节算则是2个),因此,如果你的要求是中文和英文数字都是1,总长度为12,则问题很简单,只要把文本框的MaxLength属性设为12即可。
如果是中文为2,英文数字为1,总长度12,则问题突然就变复杂了,需要另外编程解决(注意这时候MaxLength应该设为0):
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii <> 8 And LenB(StrConv(Text1.Text & Chr(KeyAscii), vbFromUnicode)) > 12 Then
KeyAscii = 0
End If
End Sub
更多追问追答
追问
vb里没有LenB函数。这段代码实现不了。
追答
这是VB6的代码。你的是VB.NET?
百事牛
2024-10-22 广告
2024-10-22 广告
百事牛是共享提供商,我们提供可靠有效的服务,适当合理的授权费有利于的继续更新优化。同样的事情,同样的方法,百事牛团队十年磨一剑,始终至聚焦在密码恢复领域,深耕于此,我们已研制出有别于其他公司的算法和运算模式, 百事牛的暴力模式加入了分布式点...
点击进入详情页
本回答由百事牛提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询