首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

textbox或RichTextBox限定一行长度为45个字以内,自动换行+回车。该如何处理

2012-01-21 
textbox或RichTextBox限定一行长度为45个字以内,自动换行+回车。限定每行最大长度为45个文字。超过就自动换

textbox或RichTextBox限定一行长度为45个字以内,自动换行+回车。
限定每行最大长度为45个文字。超过就自动换行及回车。文本框里可能是手工输入也有可能是粘贴。
帮帮忙啊!!最好能给段源码谢谢了。

[解决办法]
Private Sub Text1_Change()
Dim a() As String
Dim i As Long
Dim bLineBroken As Boolean

a = Split(Text1.Text, vbCrLf)
For i = 0 To UBound(a)
If Len(a(i)) > 45 Then
a(i) = BreakLine(a(i))
bLineBroken = True
End If
Next

If bLineBroken Then
Text1.Text = Join(a, vbCrLf)
End If
End Sub
BreakLine 自己完成
[解决办法]
很简单嘛!
Private Sub Text1_Change()
Dim a() As String
Dim i As Long
Dim bLineBroken As Boolean

a = Split(Text1.Text, vbCrLf)
For i = 0 To UBound(a)
If Len(a(i)) > 45 Then
a(i) = BreakLine(a(i))
bLineBroken = True
End If
Next

If bLineBroken Then
Text1.Text = Join(a, vbCrLf)
End If
Text1.SelStart = Len(Text1.Text)
End Sub


Private Function BreakLine(strT As String)
BreakLine = Left(strT, 45) & vbCrLf & Mid(strT, 46)
End Function

热点排行