怎样在文本框中自动加空格,初学急救 ,还是没有解决,好头大

riwan61170 2005-10-17 04:07:57
请问如果我想实现在文本框输入两个数字之后程序自动加空格让用户继续输入,这样怎么完成,要是老调用 Text1_Change事件会不会程序很慢,请帮我解答,谢谢
maskedit 不是很会用,如果设置mask 属性用户输入的内容无穷大就不行了

谁可以给我写个函数啊,万分感谢
...全文
1008 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
riwan61170 2005-10-18
  • 打赏
  • 举报
回复
谢谢大家的帮助,问完上面的我就结贴了,谢谢各位
faysky2 2005-10-18
  • 打赏
  • 举报
回复
Private Sub Text1_KeyPress(KeyAscii As Integer)
If Len(Text1.Text) Mod 3 = 1 Then SendKeys " "
End Sub
riwan61170 2005-10-18
  • 打赏
  • 举报
回复
只有 faysky2() 的通过了,不过还有一个缺陷就是不能修改,因为删除键也引发事件发生,所以容易混乱,另外如果是汉字的话应该怎么办,谢谢你
riwan61170 2005-10-18
  • 打赏
  • 举报
回复
to: j_x_y(专程赶来接分)
无法实现,只要是加空格之后一直会出发CHANGE事件,会死循环
liang80318 2005-10-18
  • 打赏
  • 举报
回复
可以这样啊,判断一下文本的长度,然后加上就可以啊
因为LEN碰到汉字,一样可以认为是两个的

if len(text1.text)=2 then
text1.text=text1.text & " "
else

endif
northwolves 2005-10-17
  • 打赏
  • 举报
回复
Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer)
If Len(Text1.Text) Mod 3 = 2 Then SendKeys " "
End Sub
j_x_y 2005-10-17
  • 打赏
  • 举报
回复
Private Sub Text1_Change()
If Len(Text1.Text) = 2 Then
Text1.Text = Text1.Text & " "
Text1.SelStart = 3
End If
End Sub
fishmans 2005-10-17
  • 打赏
  • 举报
回复
在keydown事件,搞错了
fishmans 2005-10-17
  • 打赏
  • 举报
回复
你在keypress事件里加个静态变量加值 判断一下啦

每输两个字变量清零,加空格

不过如果输入汉字的话怎么算法??
riwan61170 2005-10-17
  • 打赏
  • 举报
回复
to liang80318(小亮):
我想在用户输完2个字符之后立即程序加上空格,而不是最后加空格,这样怎么做啊
liang80318 2005-10-17
  • 打赏
  • 举报
回复
这个问题,可以这样做啊,当用户输完以后,自动加上就可以了
比方说吧
text1.text=mid(text1.text,1,2)&" "&right(text1.text,len(text1.text)-2)
这样的话,里面的文本就可以了
MID取前两位,就是两个数字,然后加上两个空格,最后再跟上从右边取,取的位数
让它的长度-2,就可以了.
先试试看
这一句放在这个文本框失去焦点的时候.

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧