如何令文本换行时取整个单词?

来源:百度知道 编辑:UC知道 时间:2024/09/20 23:36:15
我的程序中显示文本(英文)内容时用的是下面的函数,可是每到换行的时候,程序按照单个字符计算,而不是按照整个单词显示,经常导致换行时,行末单词一半在上一行,剩下字母在下一行,请教以下函数如何修改,保证换行时程序取整个单词?
function TextChange1(Txtstring,L)
dim i,LineLen,TempString
If Trim(Txtstring)="" Then
TextChange1=""
Exit Function
End If
Tempstring=""
LineLen=0
i=1
Do While i<=Len(Txtstring)
If asc(mid(Txtstring,i,1))=13 Then
LineLen=0
TempString=TempString + "<BR>"
i=i+2
Else
If asc(mid(Txtstring,i,1))>0 Then
LineLen=LineLen+1
If LineLen=L Then
LineLen=0
If asc(mid(Txtstring,i,1))=32 Then
TempString=TempString + " " + "<BR>"
Else
TempString=TempString + mid(Txtstring,i,1) +"<BR>"
End If
ElseIf LineLen>L Then
LineLen=0
If asc(mid(Txtstring,i,1))=32 Then
TempString=TempString + "<BR>" + " "
Else
TempString=TempS

你的VB太难看懂了,我只是说我的思路,遇到会车时来一个判断,如果在回车时,判断回车的前一个或者是后一个是不是空格,如果是就换行,如果不是可以选择是在前一个空格处换行还是在后一个空格处换行,可以从这个位置来获取前面或后面的第一个空格的字符串的位置,你的代码没有注释是个很坏的习惯