我正在尝试在Visual Studio 2008的帮助下使用VB中的WebKit组件(http://www.webkit.org/)。
除了以下两个问题外,它运行没有问题:1.提示/工具提示不显示(例如,如果您将鼠标悬停在Google徽标上,通常会出现一个提示/工具提示)2.如果有弹出窗口,我不知道如何获取所需的新URL。
我已经在这件事上工作了几天,但还没有找到任何解决方案:(
也许你知道这个问题的解决方案。
干杯马库斯·
PS:如果您需要超过以下源代码来分析问题,请告诉我......
源代码表单1
Imports System.IO
Imports WebKit
Public Class frmMain
Private _url As String
Private _mode As String
Private _popupUrl As String
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
On Error Resume Next
Dim bLogging As Boolean
setWindowAndBrowserSettings()
_url = "http://www.google.com"
browserComp.Navigate(_url)
End Sub
Private Sub setWindowAndBrowserSettings()
Me.Text = "Test - Browser"
Me.WindowState = FormWindowState.Maximized
browserComp.Dock = DockStyle.Fill
browserComp.Visible = True
End Sub
Private Sub browserComp_NewWindowCreated(ByVal sender As Object, ByVal e As WebKit.NewWindowCreatedEventArgs) Handles browserComp.NewWindowCreated
'frmPopup.WindowState = FormWindowState.Maximized
frmPopup.Text = "ixserv - POPUP"
frmPopup.popup.Navigate(_popupUrl)
frmPopup.Show()
End Sub
Private Sub browserComp_NewWindowRequest(ByVal sender As Object, ByVal e As WebKit.NewWindowRequestEventArgs) Handles browserComp.NewWindowRequest
e.Cancel = False
_popupUrl = browserComp.Url.ToString ' WHERE can I get the clicked URL? This is the old one of the remaining window
End Sub
End Class
代码表单2
Public Class frmPopup
End Class
以下弹出窗口/新窗口创建函数对我有用:
Private Sub browserComp_NewWindowCreated(ByVal sender As Object, ByVal e As WebKit.NewWindowCreatedEventArgs) Handles browserComp.NewWindowCreated
frmPopup.Text = "POPUP"
Dim popupBrowser As WebKit.WebKitBrowser
popupBrowser = e.WebKitBrowser
frmPopup.Controls.Add(popupBrowser)
frmPopup.Show()
End Sub
而frmPopup是一种新形式。
在我尝试之前,我已经将 Webkit 组件添加到新表单中,这可能是问题所在。我假设,诀窍是,创建一个直接连接到参数e.WebkitBrowser
的新WebKitBrower
元素,而不是重载表单中现有的webkitbrowser组件。现在不要问我这个原因(我真的不知道):P
应该补充一点,我使用了 Webkit.NET 组件。同样的技巧也适用于OpenWebkitSharp-wrapper
提示问题仍然存在...