如何获得TextBox里光标位置

这个问题来自论坛。

第一反应是SelectionStart属性,结果发现在分方向选择内容时返回错误值,真正答案如下:

using System;
using System.ComponentModel;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.Drawing;
namespace WindowsApplication5
...{
  public partial class Form1 : Form
  ...{
    public Form1()
    ...{
      InitializeComponent();
    }
    [DllImport("user32.dll")]
    private static extern bool GetCaretPos(out Point ppt); 
  
    private void Form1_Load(object sender, EventArgs e)
    ...{
      this.textBox1.Text = "jinjazz";
    }
    private void Form1_MouseDown(object sender, MouseEventArgs e)
    ...{
      Point p;
      GetCaretPos(out p);
      int i=this.textBox1.GetCharIndexFromPosition(p);
      this.Text = i.ToString();
  
    }
  }
}

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索form
, private
, this
, textbox
, using
, system
光标聚焦textbox
textbox 光标位置、wpf textbox光标位置、c textbox 光标位置、vb textbox光标位置、textbox获取光标位置,以便于您获取更多的相关知识。

时间: 2025-01-13 12:44:52

如何获得TextBox里光标位置的相关文章

textbox 在光标位置插入字符功能的js实现(兼容ie,firefox)_表单特效

先在本文框中点鼠标以确定光标位置.

如何用Javascript获得TextArea中的光标位置

javascript|光标 小弟最近在写一个在线编辑器,UBB版的,由于没有使用弹出窗口,所以,在添加代码的时候,只能添在TextArea的最后面,无法在光标之前插入,于是在网上疯狂的找资料,工夫不负有心人,终于被我找到了如何获得TextArea中的位置,但是如果TextArea中有很多内容的时候,会显得很闪烁.其代码如下. function getPos(obj) { obj.focus(); var workRange=document.selection.createRange(); ob

用javascript获取textarea中的光标位置_javascript技巧

对于写javascript写网页编辑器的人来说,获取textarea中的光标位置是一个非常重要的问题,而往往很多人在这个地方不知所措,找不到好的办法.昨天我在网上找到了一段javascript代码,本来不想把原版放在这里的,就是因为太精彩了,怕我给改坏了,所以还是原版放在这里吧. var start=0;     var end=0;     function add(){                var textBox = document.getElementById("ta"

js-当contenteditable="true时,如何给光标位置插入HTML元素

问题描述 当contenteditable="true时,如何给光标位置插入HTML元素 现在项目中遇到一个这样的问题: 一个div的contenteditable设置为True时,在输入了一段文字后,列入 现在需要做的是,点击表情框,这个时候焦点会离开这个div,然后选择一个表情,将这个表情插入到原来的光标的位置. 请问各位大神 .... 这一步应该如何做到? 解决方案 因为涉及到DOM Range 在网上浏览了很多这方面的东西 仍然没有解决 . 解决方案二: http://stackover

js获取textarea光标位置方法(兼容ie,ff)

js获取textarea光标位置方法(兼容ie,ff) 网上一搜一大票,但在使用中发现一些问题,以下所有内容只在ie8中测试过 <textarea id="t2">123</textarea> 方法1: var srng = document.selection.createRange(); srng.moveStart('character', -t2.value.length); 使用这种方法把srng的其实位置移到t2的开始位置,咋一看这语句有问题,如果光

javascript取得textarea光标位置开始与结束位置

 代码如下 复制代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns=http://www.111cn.net> <head> <title>javascript获取textarea光标位置和内容的方法

解释一段在光标位置插入字符的js代码

js|插入|光标 这篇小文本来应该在昨天发的,但是由于我昨天敲错了一个键(就是IBM笔记本键盘上的前进后退),导致文章丢失...今天就简写了.网络上有许多能在光标位置插入字符的js代码,比较啰嗦,不适合讲解.我写了一段简单的代码,解释一下: 1234567 <FORM> <TEXTAREA NAME="a" ONSELECT="this.pos=document.selection.createRange();"  onKEYUP="th

js获取光标位置和设置文本框光标位置示例代码

 本实例描述了如何用Javascript来控制和获取文本框/文本域的鼠标光标位置,以下代码兼容IE和Chrome,Firefox,大家参考使用吧 代码如下: <script type="text/javascript">         function getTxt1CursorPosition(){             var oTxt1 = document.getElementById("txt1");             var cur

JS在可编辑的div中的光标位置插入内容的方法

 首先要让DIV启用编辑模式 代码如下: <div contenteditable=true id="divTest"></div> 通过设定contenteditable=true开启div的编辑模式.这样DIV就可以跟文本框一样输入内容了. 不扯话题了.下面说怎么获取或设置光标位置.   2个步骤: ① 获取DIV中的光标位置 ② 改变光标位置 代码如下: var cursor = 0; // 光标位置  document.onselectionchange