vb的text控件

vb里的text控件,我要输入文档,有以下要求:不准出现两个和两个以上的连续空格。(因为我要以空格为间隔,用split函数得到数组)请问各位大哥大姐,这段程序怎么写?... vb里的text控件,我要输入文档,有以下要求:不准出现两个和两个以上的连续空格。(因为我要以空格为间隔,用split函数得到数组)
请问各位大哥大姐,这段程序怎么写?
展开
 我来答
百度网友72eb2e0
2009-09-23 · 超过36用户采纳过TA的回答
知道小有建树答主
回答量:97
采纳率:0%
帮助的人:92.1万
展开全部
我这种方法只过滤多余的空格。
Private Sub Command1_Click()
Dim a, str As String, i As Integer, j As Integer
For i = 1 To Len(Text1.Text) '遍历整个字符串
If Asc(Mid(Text1.Text, i, 1)) = 32 Then '当前字符是一个空格时
If Asc(Mid(Text1.Text, i + 1, 1)) <> 32 Then '如果下一个字符不是空格则跳过空格添加后面的内容
str = str & " " & Mid(str, i + 1)
End If
Else '当前字符不是空格则赋值到变量里
str = str & Mid(Text1.Text, i, 1)
End If
Next
a = Split(str) '以空格为分隔符取数组,并输出。
For j = 0 To UBound(a)
Print "第" & j + 1 & "个元素的值为:" & a(j)
Next
End Sub
ynisue
2009-09-22 · TA获得超过958个赞
知道小有建树答主
回答量:442
采纳率:0%
帮助的人:466万
展开全部
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 32 And Right(Text1.Text, 1) = " " Then
KeyAscii = 0
Endif
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
亦浪名气1p
2009-09-23 · TA获得超过927个赞
知道小有建树答主
回答量:499
采纳率:63%
帮助的人:331万
展开全部
ynisue方法好,直接在输入的时候就限制了,不能输入两个以上空格,代码简单,小弟也学习了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
巴哥泡泡
2009-09-23 · TA获得超过1040个赞
知道大有可为答主
回答量:1040
采纳率:0%
帮助的人:1133万
展开全部
根本就不需要限制的,直接
while instr(strl," ")<>0
replace(strl," "," ")
wend
就行了,分组前作,把2个空格替换成一个空格!
1楼的如果我在字符串中间加空格,还有个空格不再左边方向呢?
要么在KEYPRESS过程中加replace也行,避免循环了,虽然执行的次数更多!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式