vb 如何获得webbrowser控件的坐标 下面代码可以获取网页内坐标,但不可以获取图片或FALSH坐标.

Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
Set M_Dom = WebBrowser1.Document

On Error GoTo ToExit '打开错误陷阱
'------------------------------------------------

'这里是在WebBrowser1加载网页完成后,在WebBrowser1中执行一段js脚本,用来绑定鼠标按下事件
'当鼠标按下以后,js会控制网页跳转到 mouse://x|y 的页面,上面的代码可以截获这个协议
Dim js As String
'onmouseover
js = "document.body.oncontextmenu=function()" & vbCrLf & _
"{location.href='mouse://'+window.event.x+ '|'+window.event.y;}"

WebBrowser1.Document.parentWindow.execScript js, "javascript"
'------------------------------------------------
Exit Sub
'----------------
ToExit:
Resume Next
End Sub
WebBrowser1控件没有MouseMove事件,就不可以获取到坐标吗?

第1个回答  2008-09-17
HTML中的标签没有与自身位置相对应的属性,虽然可以用CSS指定绝对位置,但是这种做法很少用,而且只对部分元素有效。如果这个网页非常简单,或许可以通过分析HTML源代码,根据Body的顶部间距、左边间距、字体大小、行距等来大体计算出一个链接文本在WebBrowser中的位置,进而转换成屏幕坐标;一旦这个网页比较麻烦,这种做法就不再可能,因为网页中有很多元素都是无法获取其面积的绝对大小的,比如一个未指定具体尺寸的图片、一个embed等,如果使用了框架那就更惨。
第2个回答  2008-09-17
提问??

能否反向操作? 即已知屏幕坐标,如何用js控制网页跳转到 mouse://x|y 的页面??

...下面代码可以获取网页内坐标,但不可以获取图片或FALSH坐标._百度知 ...
如果这个网页非常简单,或许可以通过分析HTML源代码,根据Body的顶部间距、左边间距、字体大小、行距等来大体计算出一个链接文本在WebBrowser中的位置,进而转换成屏幕坐标;一旦这个网页比较麻烦,这种做法就不再可能,因为网页中有很多元素都是无法获取其面积的绝对大小的,比如一个未指定具体尺寸的图片、一个...

VB如何把网页源码中的IP地址显示出来?
VB中使用webbrowser控件载入页面,然后用它的对部对象读取属性值:以下代码要在webbrowser1的载入完成事件里写。msgbox webbrowser1.document.getElementById("localp").innerText 这就是取得网页中的localp元素的内容,弹出显示。

如何从VB的WebBrowser控件中获取网页文字
Function HtmlStr$(Url$) '提取网页源码函数 Dim XmlHttp Set XmlHttp = CreateObject("Microsoft.XMLHTTP") XmlHttp.Open "GET", Url, False XmlHttp.send If XmlHttp.ReadyState = 4 Then HtmlStr = StrConv(XmlHttp.ResponseBody, vbUnicode) Set XmlHttp = NothingEnd FunctionPrivate Sub ...

vb如何获得webBrowser控件里选定对象的url
Sub gourl(canshu1)For i = 1 To WebBrowser1.Document.All.length - 1 If UCase(WebBrowser1.Document.All(i).tagName) = "A" Then If InStr(WebBrowser1.Document.All(i).innertext, "下一页") Then msgbox WebBrowser1.Document.All(i).href end if End If Next i End Sub 读懂就...

vb怎么提取网页源代码的指定内容
先得到源代码:这里用WebBrowser1控件 text1=WebBrowser1.Document.documentElement.outerHTML 下面是筛选实例 自编函数Getin 范例 GetIn(字符串, 起始, 结束)GetIn(text1, ">", "<") '截取中间 GetIn(text1, "<", "") '截取后半段 GetIn(text1, "", ">") '截取前半段 Function...

VB.net中如何获取WebBrowser网页中的框架网页的内容
HtmlDocument doc= webBrowser1.Document.Window.Frames["frame1"].Document;HtmlElement el= doc.GetElementById("input的ID");el.SetAttribute("value","111");

用VB webbrowse控件浏览网页,如何取得网页上 的数据 ?
1.使用WebBrowser控件浏览 2.从WebBrowser获得document进行DOM处理.(WebBrowse的document也可以直接进行DOM处理,只是功能少点)代码示例:WebBrowser1.Silent = True WebBrowser1.Navigate "网页的网址"Do Until WebBrowser1.ReadyState = 4 '等待加载完毕 DoEvents Loop '以下的语句需要引用mshtml 才能使用 ...

vb 获取网页文本框内容
private sub command1_click text1=webBrowser1.document.getelementbyid("1").value 或:text1=webBrowser1.document.getelementsbyname("1")(0).value end sub 可把上述代码写到WebBrowser1_DownloadComplete事件中 需要将ID设为唯一的,如果有多个tag的ID为"1"(这是网页设计所不允许但不是完全...

VB.net webBrowser控件获取如何获取下面这网页元素的值
然后在vb.net的webbrowser中加载这个test.html,加载完毕后点击一个按钮获取input的value值,实现代码如下:' 此方法为Form1的加载事件 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load ' 加载本地文档test.html WebBrowser1.Url = New Uri(String.Format("file:\/\/...

vb webbrowser获取网页网址
假设有一个网页浏览控件WebBrowser1以及一个文本框Text1来显示网址,用以下代码可以解决:Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)Text1.Text=URL End Sub 希望对您有所帮助!

相似回答
大家正在搜