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;
  • 相关阅读:
    贪吃蛇 666
    安装postgresql
    linux CentOS6.5 yum安装mysql 5.6
    centos--git搭建之Gogs安装
    查看mysql 默认端口号和修改端口号
    centos之mysql安装配置使用
    流媒体服务器SRS部署
    vue用webpack打包时引入es2015插件
    log4j2的log输出到tomcat/logs目录下及使用(转)
    log4j2的配置文件log4j2.xml笔记
  • 原文地址:https://www.cnblogs.com/soundcode/p/12512638.html
Copyright © 2011-2022 走看看