我编程中使用Textbox遇到的,请帮看看.分数不多,千里鹅毛我在给textbox.text中赋"接收->" &"11111111111111111111111111111111"时变成了("1111..."超过了,textbox的宽度,就出现。要是没有超过textbox的宽度正常)接收->
111111111111111111111
11111111111要是"接收->" &"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"就变成接收-
>aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaa
请问这么回事

解决方案 »

  1.   

    pcwak(书剑狂生) 
    我就是想让他换行显示,我希望的效果是
    -----------我希望的----------------------------------
    接收->aaaaaaaaaaaaaaaaaa
    aaaaaaaaaaaaaaaaaaa
    -------------------------------------------------------------------实际的---------------------------------
    接收-
    >aaaaaaaaaaaaaaaaaaaaaaaa
    aaaaaaaaaaaaa
    -----------------------------------------------------
    可一输入超过一行的数字,或字母,他就不在-〉后面输出了,就跑到下一行了~
      

  2.   

    没办法,它是按照英文习惯换行的,- 是换行连字符。这样:
    Dim LineLen as long
    dim strTmp as stringLineLen = 24
    strTmp = "接收->" & "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
    if lenb(strTmp) > LineLen then
       text1 = ""
       For i = 1 to lenb(strTmp) step linelen
          text1 = text1 & midb(strTmp, i, linelen) 
          if i + linelen < lenb(strTmp) then text1 = text1 & vbcrlf
       Next i
    else
       text1 = strTmp
    end if
      

  3.   

    晕呀。。textbox中文和英文字符不和气。合不来?????
    短短的内个字可以合起来,要是长起来了,分行,它就中文和英文分开了。
      

  4.   

    -----------我希望的----------------------------------
    接收->aaaaaaaaaaaaaaaaaa
    aaaaaaaaaaaaaaaaaaa
    -------------------------------------------------------------------实际的---------------------------------
    接收-
    >aaaaaaaaaaaaaaaaaaaaaaaa
    aaaaaaaaaaaaa
    -----------------------------------------------------实现:
    "接收-" & vbCrlf & ">aaaaaaaaaaaaaaaaaa" & vbCrlf & "aaaaaaaaaaaaaaaaaaa"vbcrlf '换行
      

  5.   

    字符串A & vbcrlf & 字符串B & 字符 & vbcrlf & 串C 得出的结果是 :
    ------------
    字符串A
    字符串B
    字符
    串C
    ------------
    明白?
      

  6.   

    sorry, 中间少写了个 vbcrlf
    字符串A & vbcrlf & 字符串B & vbcrlf & 字符 & vbcrlf & 串C 
      

  7.   

    Dim i As Integer, charNo As Integer, beginNo As Integer
            Const LineTextcut = 15 '一行显示英文字母的数量
            Dim s As String, inText As String, outText As String
            inText = Text1.Text
            For i = 1 To Len(inText)
                s = Mid(inText, i, 1)
                If Asc(s) > 0 And Asc(s) < 127 Then
                    charNo = charNo + 1
                Else
                    charNo = charNo + 2
                End If
                Select Case (charNo - beginNo)
                Case 16
                    outText = outText & vbCrLf & s
                    beginNo = charNo
                Case 15
                    outText = outText & s & vbCrLf
                    beginNo = charNo
                Case Else
                    outText = outText & s
                End Select
            Next
                Text1.Text = outText
    看看可以吗?
      

  8.   

    需要再加一句:在for 循环之前
    inText = Replace(inText, vbCrLf, "", , -1)
    替换以前的换行