我想在TextBox或者RichTextBox中输出文本,但是希望可以控制文本的字体、大小和在文本控件中的位置。例如: 我们是坏蛋           你们也是坏蛋           他们才是坏蛋
       we are bad boys      you are bad boys too   but they are the...“我们是坏蛋”是20号字,“你们也是坏蛋”和“他们才是坏蛋”是12号字“我们是坏蛋”与“we are bad boys”对齐,“你们也是坏蛋”与"you are bad boys too"对齐,依次类推这些文字都是用同一个string变量传递到文本控件的。请问能不能用textbox或richtextbox作到这点?如果不能,应该用什么控件完成?

解决方案 »

  1.   

    '我没有时间调试你的代码,我给你一个已经调好的,你参考参考就明白了:rtfText是一个RichTextbox控件
       Dim position As Long
       Dim SelecText As Long
       RichTextbox1.Text = "你好" & vbCrLf & vbCrLf & _
                      "春江花月夜" & vbCrLf & vbCrLf & _
                      "一派竹西歌吹路" & vbCrLf & vbCrLf & _
                      "日出江花红胜火,春来江水绿如蓝。"
       
       With RichTextbox
    '      .Font.Charset = "GB2313"
           position = InStr(1, .TextRTF, "你好!")
           SelecText = Len("你好!")
           .SelStart = position
           .SelLength = SelecText
           .SelColor = vbRed
           .SelFontName = "宋体"
           .SelFontSize = 18
           .SelAlignment = 2
           
           position = InStr(1, .Text, "春江花月夜")
           
           SelecText = Len("春江花月夜")
           .SelStart = position - 1
           .SelLength = SelecText
           .SelColor = vbBlack
           .SelFontName = "宋体"
           .SelFontSize = 11
           .SelAlignment = 2
           
           position = InStr(1, .Text, "一派竹西歌吹路")
           SelecText = Len("一派竹西可吹路")
           .SelStart = position - 1
           .SelLength = SelecText
           .SelColor = vbRed
           .SelFontName = "宋体"
           .SelFontSize = 15
           .SelAlignment = 2
           
           
           position = InStr(1, .Text, "日出江花红胜火,春来江水绿如蓝。")
           SelecText = Len("日出江花红胜火,春来江水绿如蓝。")
           .SelStart = position - 1
           .SelLength = SelecText
           .SelColor = vbBlack
           .SelFontName = "宋体"
           .SelFontSize = 22
           .SelAlignment = 2
           
       End With