zoukankan      html  css  js  c++  java
  • 获取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 pos
                Point pos = new Point(el.OffsetRectangle.Left, el.OffsetRectangle.Top);
    
                //get the parents pos
                HtmlElement 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;
  • 相关阅读:
    三调数据库标注插件
    ionic ios 打包发布流程
    ionic ios 打包 真机测试常见问题
    使用Jquery Viewer 展示图片信息
    微信支付退款证书服务器配置
    帝国CMS站点迁移
    solr 服务器搭建(Linux版)
    ionic ios 打包
    Solr 同义词搜索
    ionic 环境搭建
  • 原文地址:https://www.cnblogs.com/soundcode/p/12512638.html
Copyright © 2011-2022 走看看