日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

webbrowser selstart selLength

發布時間:2025/4/14 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 webbrowser selstart selLength 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

附件:http://files.cnblogs.com/xe2011/Webbrowser_SelStart.rar

?

1 獲得webBrowser光標所在的位置

2 設置webBrowser光標的位置

3 獲得webBrowser選中的文本長度

4 選中webBrowser指定的字符串

?

?

?

項目添加引用Microsoft.mshtml

單元引用

using mshtml;

?

??? 獲得webBrowser光標所在的位置

當有文本被選中時返回 的位置應為當 getSelectionStart() - getSelectionLength() /*function getSelectionStart(){var range=document.selection.createRange();range.moveStart('character', -document.body.innerText.length);return range.text.length;}*/private int getSelectionStart(WebBrowser webBrowser){try{IHTMLDocument2 document = (IHTMLDocument2)webBrowser.Document.DomDocument;IHTMLTxtRange range = (IHTMLTxtRange)document.selection.createRange();range.moveStart("character", -document.body.innerText.Length);return range.text.Length;}catch (System.Exception ex){//MessageBox.Show(ex.Message);//當光標在0這個位置使用功能引起錯誤return 0;}}

?


??? 設置webBrowser光標的位置

?請看這個 選中指定的字符串 設置length=0,設置start的值就是光標的所在的位置

webBrowser1.Document.Focus();setSelection(webBrowser1, 6, 0);


??? 獲得webBrowser選中的文本長度

/*function getSelectionLength(){return document.selection.createRange().text.length;}*/private int getSelectionLength(WebBrowser webBrowser){try{IHTMLDocument2 document = (IHTMLDocument2)webBrowser.Document.DomDocument;IHTMLTxtRange range = (IHTMLTxtRange)document.selection.createRange();return range.text.Length;}catch (System.Exception ex){return 0;//當光標在0這個位置使用功能引起錯誤 }}

?


??? 選中webBrowser指定的字符串

/* function setSelection(start,length){var range=document.selection.createRange();range.collapse(true);range.moveStart('character', start);range.moveEnd('character', length);range.select();}*/public void setSelection(WebBrowser webBrowser, int start, int length){IHTMLDocument2 document = (IHTMLDocument2)webBrowser.Document.DomDocument;IHTMLTxtRange range = (IHTMLTxtRange)document.selection.createRange();range.collapse(true);range.move("textedit", -1); //光標移動到第0位處range.moveStart("character", start);range.moveEnd("character", length);range.select();}

?

?

?

完整代碼

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using mshtml;namespace WindowsFormsApplication1 {public partial class Form1 : Form{public Form1(){InitializeComponent();}private void Form1_Load(object sender, EventArgs e){webBrowser1.DocumentText = @"2013-12-07 19:14:20";webBrowser1.Document.ExecCommand("EditMode", false, null);}/*function getSelectionStart(){var range=document.selection.createRange();range.moveStart('character', -document.body.innerText.length);return range.text.length;}*/private int getSelectionStart(WebBrowser webBrowser){try{IHTMLDocument2 document = (IHTMLDocument2)webBrowser.Document.DomDocument;IHTMLTxtRange range = (IHTMLTxtRange)document.selection.createRange();range.moveStart("character", -document.body.innerText.Length);return range.text.Length;}catch (System.Exception ex){//MessageBox.Show(ex.Message);//當光標在0這個位置使用功能引起錯誤return 0;}}/*function getSelectionLength(){return document.selection.createRange().text.length;}*/private int getSelectionLength(WebBrowser webBrowser){try{IHTMLDocument2 document = (IHTMLDocument2)webBrowser.Document.DomDocument;IHTMLTxtRange range = (IHTMLTxtRange)document.selection.createRange();return range.text.Length;}catch (System.Exception ex){return 0;//當光標在0這個位置使用功能引起錯誤 }}/* function setSelection(start,length){var range=document.selection.createRange();range.collapse(true);range.moveStart('character', start);range.moveEnd('character', length);range.select();}*/public void setSelection(WebBrowser webBrowser, int start, int length){IHTMLDocument2 document = (IHTMLDocument2)webBrowser.Document.DomDocument;IHTMLTxtRange range = (IHTMLTxtRange)document.selection.createRange();range.collapse(true);range.move("textedit", -1); //光標移動到第0位處range.moveStart("character", start);range.moveEnd("character", length);range.select();}//選中指定的字符串private void button1_Click(object sender, EventArgs e){webBrowser1.Document.Focus();setSelection(webBrowser1, 0, 4);}//光標所在的位置private void button2_Click(object sender, EventArgs e){webBrowser1.Document.Focus();int i = (int)getSelectionStart(webBrowser1);Text = i.ToString();}//選中的字符串長度private void button3_Click(object sender, EventArgs e){webBrowser1.Document.Focus();Text = getSelectionLength(webBrowser1).ToString();}//設置光標的位置private void button4_Click(object sender, EventArgs e){webBrowser1.Document.Focus();setSelection(webBrowser1, 6, 0);}} } View Code

?

?

?

?

?

這是翻譯JAVA SCRIPT的代碼

"<script> function getCommandValue(commandId){return document.queryCommandValue(commandId); } function getSelectionStart(){var range=document.selection.createRange();range.moveStart('character', -document.body.innerText.length);return range.text.length; } function getSelectionLength(){return document.selection.createRange().text.length; } function setSelection(start,length){var range=document.selection.createRange();range.collapse(true);range.moveStart('character', start);range.moveEnd('character', length);range.select(); } </script>" View Code

?

?

?

?

?

?

?

轉載于:https://www.cnblogs.com/xe2011/p/3463124.html

總結

以上是生活随笔為你收集整理的webbrowser selstart selLength的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。