在form上有一个文本框内,存放有N段文字,每段文字的长度各不相同。
也有N个按钮,分别对应该文本框中的N段文字。
现在的问题是:当我单击按钮时,在文本框中应该选中与这个按钮相对应的那段文字,使其高亮度显示,而且文本框的滚动条应该自动跳到被选中文本的那个位置。高手帮忙,这个功能应该怎么实现。

解决方案 »

  1.   

    Private Sub Command1_Click()
    Text1.Text = "asdfdsfsdf"
    Text1.SelStart = 2
    Text1.SelLength = 3
    Text1.SetFocus
    End Sub
      

  2.   

    建议用 list 控件List1.Selected(0) = True  '注意 第一条记录的为0
      

  3.   

    用 list list1.selected(1)=true
      

  4.   

    dim str1 as string
    dim i as integersyr1="abcd"i=instr(text1.text,str1)
    if i>0 then
        texti.selstart=i-1
        text1.sellength=len(str1)
    else
       msgbox"没有字符"
    endif
      

  5.   

    csdngoodnight(居然比我还快,你真行!) 的好像有点问题。
    instr只是返回第一个相同的,
    但事实上N个字段应该是有相同的。
    如:n段文字分别为:abc def  abc 等,
    按楼主的意思按按钮3返回的是:第2个abc,而不是第一个abc。
    我的意见是既然文本框里只有n个字段,且按顺序排列,何不:
    Text1.SelStart=前面各段之和?
      

  6.   

    Text1.Text = "asdfdsfsdf"
    Text1.SelStart = LEN(text.text)
    Text1.SelLength = 0
    Text1.SetFocus
      

  7.   

    但是我怎样求出这段文字有多长啊????
    textbox中的内容是从.txt里调进来的.
      

  8.   

    listbox可以吗?怎么做啊????
    大家快帮帮忙吧!