none
获取文本框中光标的位置 RRS feed

  • 问题

  • 有两个文本框textbox1和textbox2,还有一个按钮button1,  textbox1的内容为 "基本工资岗位工资", textbox2的内空为 "岗位补贴", 我想实现的是:
    现在,我用鼠标点一下textbox1中"基本工资"后面,如何记住我点的这个位置?
     然后,我选中textbox2 中的"岗位补贴", 然后我点按钮button1
    调用textbox1.text.insert(startindex,string)方法将 岗位补贴 插入到刚才我点的位置,即"基本工资"的后面.

    哪位高手帮忙看看,我在开发一个工资管理系统,需要用此方法设置公式,谢谢.
    2009年8月18日 4:17

答案

  • 哦!你的需求是这样啊!那你这样试试:
    textBox1.Text=textBox1.Text.Insert(textBox1.SelectionStart, "xxx")
    周雪峰
    • 已标记为答案 nswdwy 2009年8月19日 3:14
    2009年8月19日 2:02
    版主

全部回复

  • 你好!
         获取光标位置需要调用API,这个需求不用获取光标位置,你用Focus方法给textBox1设置输入焦点,光标还是会自动的恢复到失去焦点的时候的位置!
    周雪峰
    2009年8月18日 9:19
    版主
  • 你好!
         获取光标位置需要调用API,这个需求不用获取光标位置,你用Focus方法给textBox1设置输入焦点,光标还是会自动的恢复到失去焦点的时候的位置!
    周雪峰

    您说的我知道是这样的,文本框的确能在原位置获得输入焦点,问题是:textbox1.text的insert方法需要两个参数,(startindex,value),我如何提供这个startindex呢?因为我需要在原光标位置插入字符,请指点,您能详细说明一下那个API该怎么调用吗?是不是必须得用API?

    2009年8月19日 0:32
  • 哦!你的需求是这样啊!那你这样试试:
    textBox1.Text=textBox1.Text.Insert(textBox1.SelectionStart, "xxx")
    周雪峰
    • 已标记为答案 nswdwy 2009年8月19日 3:14
    2009年8月19日 2:02
    版主
  • 哦!你的需求是这样啊!那你这样试试:
    textBox1.Text=textBox1.Text.Insert(textBox1.SelectionStart, "xxx")
    周雪峰
    周老师,我做的是一个工资管理系统,这个界面是公式设置界面,一个textbox1,一个listbox1,还有一个+ - * / < > ( )几个按钮,
    我想做的就是,我点击listbox1中的工资项目或+ - * / < > ( )按钮时,能填到textbox1中光标的位置,因为用户可能定义公式后,发现在文本框中某个地方少了个 (  等情况,但重新删除文本框中的公式内容重新定义又麻烦,所以我才这样做。

    但现在是,我一旦点listbox1中的项或点 + -等按钮时,文本框即失去焦点了,所以,无法我用textBox1.Text=textBox1.Text.Insert(textBox1.SelectionStart, "xxx") 试了,不行,还请您指点。谢谢
    2009年8月19日 2:16
  • 你好!
         失去焦点的情况下这个方法也是可以使用的啊!这个方法我是测试过的!
    周雪峰
    2009年8月19日 2:32
    版主
  • 你好!
         失去焦点的情况下这个方法也是可以使用的啊!这个方法我是测试过的!
    周雪峰

    可以了,谢谢您,周老师,我多写了代码,在写文本框前我多写了 textbox1.focus() ,并且,我没有用textbox1.text=TextBox1.Text.Insert(TextBox1.SelectionStart, CType(sender, Button).Text),我是直接写的

    TextBox1.Text.Insert(TextBox1.SelectionStart, CType(sender, Button).Text),呵呵。

    您有QQ号吗?我的是649996281 ,有点问题想在QQ上实时的请教一下您.
    2009年8月19日 2:53
  • 不用客气啊!大家互相交流嘛!
    我没有QQ,这是我的MSN: xuefeng1982@live.cn
    周雪峰
    2009年8月19日 3:06
    版主