En sopivaa vastausta muualta löytänyt, niin kysyn nyt täällä.
Eli, mulla on WebBrowser formissa, ja kun klikkaan tiettyä linkkiä(normaalisti avaa sen välilehdessä, esim. firefoxilla) avaa linkki IE selaimen. Miten saan sen "välilehden" avattua formin webbrowserissa, ilman että että IEtä tms. tarvitsee avata?
Molemmat oli .NETille, ei VB6:lle. :\
Käsittelet beforenavigation eventin.
Grez kirjoitti:
Käsittelet beforenavigation eventin.
Ahha, kuulusko vb6:ssa olla sellanen?
Eli kun normaalisti linkki mitä klikataan, avaisi uuden välilehden. Mutta nyt se yrittää avata sen IE:llä, miten saan sen uuden välilehden avattua samassa ikkunassa, kuin missä se linkki sijaitsee?
Vaihda IE:n asetuksista että linkit aukea uuden ikkunan sijasta aina välilehteen, tai lisää formillesi vaikka tabcontrol, josta jokainen sisältää oman webbrowserin.
Linkkiä painettu -> uusi tab tabcontroliin, webbrowser uuteen tabiin, uusi webbrowser navigoimaan urliin.
Olisko tästä mitään apua.
Moi Rox!
tässä vähän purkkaa...
Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant) If Not WebBrowser1.Document Is Nothing Then If InStr(WebBrowser1.Document.Body.innerHTML, "_blank") > 0 Then WebBrowser1.Silent = True: WebBrowser1.Document.Body.innerHTML = _ Replace(WebBrowser1.Document.Body.innerHTML, "_blank", "") End If End If End Sub
Toinen purkkaviritys.. Tässä siis laitetaan apu webbrowser joka voi olla piilotettu (visible = false)
Private Sub WebBrowser1_NewWindow2(ppDisp As Object, Cancel As Boolean) WebBrowser2.RegisterAsBrowser = True Set ppDisp = WebBrowser2.Object End Sub Private Sub WebBrowser2_BeforeNavigate2(ByVal pDisp As Object, URL As Variant, Flags As Variant, TargetFrameName As Variant, PostData As Variant, Headers As Variant, Cancel As Boolean) WebBrowser1.Navigate2 URL, Flags, "", PostData, Headers Cancel = True End Sub
Grez kirjoitti:
Toinen purkkaviritys.. Tässä siis laitetaan apu webbrowser joka voi olla piilotettu (visible = false)
Toimii kuin pitääkin, kiitos!
Moi Rox!
tässä vielä aivan imelää purkkaa...
'Projektiin referenssi: Microsoft HTML Object Library (MSHTML.TLB) Dim WithEvents HTMLDOC As HTMLDocument Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer) If KeyCode = 13 Then '(Enter näppäin) WebBrowser1.Navigate Text1.Text End If End Sub Private Function HTMLDOC_onclick() As Boolean Dim elem As HTMLAnchorElement Set elem = HTMLDOC.activeElement If elem.nodeName = "A" Then WebBrowser1.Navigate elem.href ElseIf elem.nodeName = "INPUT" Or elem.nodeName = "BUTTON" Then If elem.Attributes("type").Value = "button" Then elem.Click ElseIf elem.Attributes("type").Value = "submit" Or _ elem.Attributes("type").Value = "reset" Then Dim frm As HTMLAnchorElement Set frm = elem.parentElement Do While frm.nodeName <> "FORM" DoEvents Set frm = frm.parentElement Loop For i = 0 To HTMLDOC.Forms.length - 1 If frm Is HTMLDOC.Forms(i) Then Select Case elem.Attributes("type").Value Case "submit": HTMLDOC.Forms(i).submit Case "reset": HTMLDOC.Forms(i).Reset End Select: Exit For End If Next Set frm = Nothing End If End If Set elem = Nothing End Function Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant) If Not WebBrowser1.Document Is Nothing Then WebBrowser1.Silent = True Set HTMLDOC = WebBrowser1.Document End If End Sub
Aihe on jo aika vanha, joten et voi enää vastata siihen.