Kako: Dobivanje širinu i visinu iz window.open() unutar web-preglednika glavnog računala pomoću Visual Basic .NET

U OVAJ ZADATAK

Sažetak

Visual Basic .NET aplikacijama koje je domaćin kontrole web-preglednika možete rukovati događaj NewWindow2 kako biste privukli window.open poziv koji je generirao skripte. Međutim, nije odmah očite kako aplikaciju možete nabaviti širinu i visinu vrijednosti koji se prosljeđuju značajke argument window.open tako da glavno računalo web-preglednika možete promijeniti ispravno veličinu prozora. Ovaj članak prikazuje kako nabaviti nove širine i visine kontrole web-preglednika i kako promijeniti veličinu obrasca sukladno tome.

Preduvjeti

Sljedeći popis ukratko opisuje Preporučeni hardver, softver, mrežna Infrastruktura i servisne pakete koji trebate:

  • Microsoft Visual Studio .NET

  • Microsoft Internet Explorer 5.5 Service Pack 2 ili noviji

Stvaranje uzorka

Ovaj odjeljak opisuje kako domaćin kontrole web-preglednika u aplikaciji Visual Basic .NET, kako će rukovati NewWindow2 događaja kontrole web-preglednika i zatim kako rukovati WindowSetWidth i WindowSetHeight događaja Promjena veličine aplikacije.

  1. Stvaranje nove aplikacije Windows u programu Visual Basic kako slijedi:

    1. Pokreni Visual Studio .NET.

    2. Na izborniku datoteka pokažite na Novo, a zatim projekta.

    3. Pod Vrste projekta, kliknite Visual Basic projektima. Pod predloške, kliknite Windows aplikacije.

  2. U alatnom okviru kliknite Općenito, desnom tipkom miša kliknite u alatnom okviru, a zatim Prilagoditi alatnog okvira.

  3. Na kartici COM komponenteMicrosoft web-preglednik potvrdite okvir, a zatim u redu.

  4. U alatnom okviru dvokliknite prozor programa Explorer.

  5. Dodavanje kontrola gumb i tekstni okvir kontrole obrasca.

  6. Dvokliknite gumb da biste pogledali implementaciju događaja onClick gumb u prozoru koda, a zatim dodajte sljedeći kod:

        Private Sub Button1_Click(ByVal sender As System.Object, _        ByVal e As System.EventArgs) Handles Button1.Click            AxWebBrowser1.Navigate(TextBox1.Text)    End Sub

    Ovu šifru omogućuje pregledavanje na URL koji navedete u tekstni okvir.

  7. Dodajte sljedeći kôd za pisanje funkcija rukovatelj za NewWindow2:

        Private Sub AxWebBrowser1_NewWindow2(ByVal sender As Object, _        ByVal e As AxSHDocVw.DWebBrowserEvents2_NewWindow2Event) _        Handles AxWebBrowser1.NewWindow2            Dim frmWB As Form1            frmWB = New Form1()            frmWB.AxWebBrowser1.RegisterAsBrowser = True            e.ppDisp = frmWB.AxWebBrowser1.Application            frmWB.Visible = True    End Sub
  8. Dodajte sljedeći kôd za pisanje funkcija rukovatelj za WindowSetHeight:

        Private Sub AxWebBrowser1_WindowSetHeight(ByVal sender As Object, _        ByVal e As AxSHDocVw.DWebBrowserEvents2_WindowSetHeightEvent) _        Handles AxWebBrowser1.WindowSetHeight            Dim heightDiff As Integer            heightDiff = Me.Height - Me.AxWebBrowser1.Height            Me.Height = heightDiff + e.height    End Sub
  9. Dodajte sljedeći kôd za pisanje funkcija rukovatelj za WindowSetWidth:

        Private Sub AxWebBrowser1_WindowSetWidth(ByVal sender As Object, _        ByVal e As AxSHDocVw.DWebBrowserEvents2_WindowSetWidthEvent) _        Handles AxWebBrowser1.WindowSetWidth            Dim widthDiff As Integer            widthDiff = Me.Width - Me.AxWebBrowser1.Width            Me.Width = widthDiff + e.width    End Sub

Dovršite uzorak koda

Public Class Form1    Inherits System.Windows.Forms.Form#Region " Windows Form Designer generated code "    'Omitted#End Region    Private Sub Button1_Click(ByVal sender As System.Object, _        ByVal e As System.EventArgs) Handles Button1.Click            AxWebBrowser1.Navigate(TextBox1.Text)    End Sub    Private Sub AxWebBrowser1_NewWindow2(ByVal sender As Object, _        ByVal e As AxSHDocVw.DWebBrowserEvents2_NewWindow2Event) _        Handles AxWebBrowser1.NewWindow2            'MessageBox.Show(AxWebBrowser1.Height & ":" & AxWebBrowser1.Width)            'MessageBox.Show(doc.body.innerHTML)            Dim frmWB As Form1            frmWB = New Form1()            frmWB.AxWebBrowser1.RegisterAsBrowser = True            'frmWB.AxWebBrowser1.Navigate2("about:blank")            e.ppDisp = frmWB.AxWebBrowser1.Application            frmWB.Visible = True            'MessageBox.Show(frmWB.AxWebBrowser1.Height & ":" & frmWB.AxWebBrowser1.Width)    End Sub    Private Sub AxWebBrowser1_WindowSetHeight(ByVal sender As Object, _        ByVal e As AxSHDocVw.DWebBrowserEvents2_WindowSetHeightEvent) _        Handles AxWebBrowser1.WindowSetHeight            'MessageBox.Show("In SetHeight" & Me.Height & ":" & e.height)            Dim heightDiff As Integer            heightDiff = Me.Height - Me.AxWebBrowser1.Height            Me.Height = heightDiff + e.height    End Sub    Private Sub AxWebBrowser1_WindowSetWidth(ByVal sender As Object, _        ByVal e As AxSHDocVw.DWebBrowserEvents2_WindowSetWidthEvent) _        Handles AxWebBrowser1.WindowSetWidth            'MessageBox.Show("In SetWidth" & Me.Width & ":" & e.width)            Dim widthDiff As Integer            widthDiff = Me.Width - Me.AxWebBrowser1.Width            Me.Width = widthDiff + e.width    End SubEnd Class

Provjerite radi li

  1. Sastavljanje aplikacije.

  2. Otvorite Notepad. Stvorite novu datoteku Test.htm pod nazivom, a zatim dodajte sljedeći kod:

    <HTML><HEAD><META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0"><TITLE></TITLE><script>function openWin(){var win;win = window.open("http://www.microsoft.com","blah","width=600, height=600");}</script></HEAD><BODY><button onClick=openWin()>Open Window</button></BODY></HTML>
  3. Spremite Test.htm na web-poslužitelju.

  4. Izvođenje aplikacije.

  5. Pregledaj Test.htm stranice, a zatim kliknite gumb. Primijetite Microsoft tvrtke Web-mjesta otvara u novoj instanci aplikacije. Obrazac je veličina prema značajke koje prosljeđuju s poziv za window.open.

Reference

Za dodatne informacije kliknite u člancima u Microsoftovoj bazi znanja pod sljedećim brojevima:

kako: obraditi događaje dokumenta u aplikaciji Visual Basic .NET

NEMODERIRANA: nabavite širinu i visinu dostavljen Window.open unutar glavnog računala za Visual C++ web-preglednikaDodatne informacije o kontrole web-preglednika, kao i metode svojstva i događaje izlaže, pogledajte na sljedećem Microsoftovu Web-mjestu:

Kontrola web-preglednika: Referenca za Visual Basic programeriDodatne informacije o razvoju Web-rješenja za Microsoft Internet Explorer, posjetite sljedeća Microsoftova Web-mjesta:

Potrebna vam je dodatna pomoć?

Proširite svoje vještine
Istražite osposobljavanje
Prvi koristite nove značajke
Pridružite se Microsoft Insidere

Jesu li ove informacije bile korisne?

Hvala vam na povratnim informacijama!

×