获取webbrowser中元素的屏幕坐标
生活随笔
收集整理的這篇文章主要介紹了
获取webbrowser中元素的屏幕坐标
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
/// <summary>/// 獲取webbrowser中html元素的屏幕坐標/// </summary>/// <param name="webBrowser"></param>/// <param name="htmlElem"></param>/// <returns></returns>public Point GetHtmlElementClientPoint(WebBrowser webBrowser, HtmlElement htmlElement){Point p = GetOffset(htmlElement);HTMLDocument doc = webBrowser.Document.DomDocument as HTMLDocument;int sl = int.Parse(doc.documentElement.getAttribute("ScrollLeft").ToString());int st = int.Parse(doc.documentElement.getAttribute("ScrollTop").ToString());//加上窗體的位置及控件的位置及窗體邊框,50和8是窗體邊框,不同的元素寬高不一樣,需要可適當調整p.X += htmlElement.OffsetRectangle.Left + this.Left + webBrowser1.Left + 8 - sl;p.Y += htmlElement.OffsetRectangle.Top + this.Top + webBrowser1.Top + 50 - st;return p;}private Point GetOffset(HtmlElement el){//get element posPoint pos = new Point(el.OffsetRectangle.Left, el.OffsetRectangle.Top);//get the parents posHtmlElement tempEl = el.OffsetParent;while (tempEl != null){pos.X += tempEl.OffsetRectangle.Left;pos.Y += tempEl.OffsetRectangle.Top;tempEl = tempEl.OffsetParent;}return pos;}//調用
HtmlElement txtCodeHE = htmlDoc.GetElementById("txtCode");
Point txtCodeHEClientPoint = GetHtmlElementClientPoint(webBrowser1, txtCodeHE);
Cursor.Position = txtCodeHEClientPoint;
與50位技術專家面對面20年技術見證,附贈技術全景圖
總結
以上是生活随笔為你收集整理的获取webbrowser中元素的屏幕坐标的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 得臣与寓目焉翻译(寓目皆乡思)
- 下一篇: 马王堆汉墓女尸(说一说马王堆汉墓女尸的简