找到了,下面是实现的代码片段:Private Sub webControl_DocumentCompleted(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles webControl.DocumentCompleted Dim link As HtmlElement Dim links As HtmlElementCollection = webControl.Document.Links For Each link In links If btnChange.Checked Then link.SetAttribute("href", newLink) End If link.AttachEventHandler("onclick", AddressOf LinkClicked) Next End Sub Private Sub LinkClicked(ByVal sender As Object, ByVal e As EventArgs) Dim link As HtmlElement = webControl.Document.ActiveElement Dim url As String = link.GetAttribute("href") MsgBox("Link Clicked: " & link.InnerText & vbCrLf & _ "Destination: " & url) End Sub 首先在 DocumentComplete 消息处理: 得到所有 link , 然后 attachEvent 的 onclick 消息 (注意处理link 中的 link的问题 ) 然后 , 然后就是写一个 onclick 的 响应函数。 LinkClicked
{
if(pMsg->message == WM_LBUTTONDOWN)
{ ::PostMessage(AfxGetApp()->GetMainWnd()->m_hWnd,WM_LBUTTONDOWN,MK_LBUTTON,MAKEWPARAM(pMsg->pt.x,pMsg->pt.y));
}
return CWnd::PreTranslateMessage(pMsg);
}
不知道会不会有其他问题
Dim link As HtmlElement
Dim links As HtmlElementCollection = webControl.Document.Links For Each link In links
If btnChange.Checked Then
link.SetAttribute("href", newLink)
End If link.AttachEventHandler("onclick", AddressOf LinkClicked)
Next
End Sub Private Sub LinkClicked(ByVal sender As Object, ByVal e As EventArgs)
Dim link As HtmlElement = webControl.Document.ActiveElement
Dim url As String = link.GetAttribute("href") MsgBox("Link Clicked: " & link.InnerText & vbCrLf & _
"Destination: " & url)
End Sub
首先在 DocumentComplete 消息处理:
得到所有 link , 然后 attachEvent 的 onclick 消息 (注意处理link 中的 link的问题 )
然后 , 然后就是写一个 onclick 的 响应函数。
LinkClicked