במשימה זו
סיכום
יישומים Visual Basic .NET שמארחות את פקד WebBrowser ניתן לטפל באירוע NewWindow2 כדי למשוך שיחה window. open שנוצרת על-ידי קובץ script. עם זאת, הוא אינו ברור מיד כיצד היישום שלך באפשרותך להשיג את ערכי הרוחב והגובה המועברים לארגומנט תכונות של window. open כך המארח WebBrowser ניתן לשנות את גודל החלון כראוי. מאמר זה מדגים כיצד ניתן להשיג את הרוחב והגובה החדשים של הפקד WebBrowser וכיצד לשנות את גודלו של הטופס שלך בהתאם.
דרישות
הרשימה הבאה מתארת את מומלצים חומרה, תוכנה, תשתית רשת ו- service packs הדרוש לך:
-
Microsoft Visual Studio .NET
-
Microsoft Internet Explorer 5.5 Service Pack 2 ואילך
צור לדוגמה
סעיף זה מתאר כיצד לארח את הפקד WebBrowser ביישום Visual Basic .NET, כיצד לטפל באירוע NewWindow2 של הפקד WebBrowser, ולאחר מכן כיצד לטפל WindowSetWidth ואירועים WindowSetHeight כדי שינוי גודל של היישום שלך.
-
יצירת יישום חדש של Windows ב- Visual Basic כדלקמן:
-
התחל Visual Studio .NET.
-
בתפריט קובץ, הצבע על חדש ולאחר מכן לחץ על פרוייקט.
-
תחת סוגי פרוייקטים, לחץ על פרוייקטים של Visual Basic. תחת תבניות, לחץ על יישום Windows.
-
-
בארגז הכלים, לחץ על כללי, לחיצה ימנית בארגז הכלים ולאחר מכן לחץ על התאמה אישית של ארגז הכלים.
-
בכרטיסיה רכיבי COM , בחר את תיבת הסימון של דפדפן האינטרנט של Microsoft ולאחר מכן לחץ על אישור.
-
בארגז הכלים, לחץ פעמיים על בחלון סייר.
-
הוספת פקד לחצן והן עבור פקד תיבת טקסט לטופס.
-
לחץ פעמיים על הלחצן כדי להציג את היישום של האירוע onClick של הלחצן בחלון הקוד ולאחר מכן הוסף את הקוד הבא:
Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click AxWebBrowser1.Navigate(TextBox1.Text) End Sub
קוד זה מאפשר לך לעיין לכתובת ה-URL שתציין בתיבת הטקסט.
-
הוסף את הקוד הבא כדי לכתוב את פונקציית מטפל עבור 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
-
הוסף את הקוד הבא כדי לכתוב את פונקציית מטפל עבור 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
-
הוסף את הקוד הבא כדי לכתוב את פונקציית מטפל עבור 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
דוגמת קוד מלאה
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
ודא כי היא פועלת
-
בניית היישום.
-
פתח את ' פנקס רשימות '. צור קובץ חדש בשם Test.htm, ולאחר מכן הוסף את הקוד הבא:
<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>
-
שמור Test.htm בשרת האינטרנט שלך.
-
הפעל את היישום.
-
דפדף אל דף Test.htm ולאחר מכן לחץ על הלחצן. שים לב כי החברה באתר האינטרנט של Microsoft פותח מופע חדש של היישום. הטופס שאתה משנה את גודלו לפי התכונות שעברו את השיחה כדי window. open.
הפניות
לקבלת מידע נוסף, לחץ על מספרי המאמרים שלהלן כדי להציג את המאמרים מתוך מאגר הידע Microsoft Knowledge Base:
311284 כיצד: לטפל באירועים המסמך ביישום Visual Basic .NET
259963 HOWTO: להשיג רוחב ויסופק הגובה הפנימי window. open המארח WebBrowser Visual C++לקבלת מידע נוסף אודות לפקד WebBrowser, כמו גם את השיטות, המאפיינים והאירועים שחושף אותו, להפנות לאתר האינטרנט הבאים של Microsoft:
לפקד WebBrowser: הפניה עבור מפתחי חזותי בסיסיhttp://msdn2.microsoft.com/en-us/library/Aa752043.aspxלקבלת מידע נוסף אודות פיתוח פתרונות מבוססי-אינטרנט עבור Microsoft Internet Explorer, בקר באתרי האינטרנט הבאים של Microsoft:
http://msdn.microsoft.com/ie/ http://support.microsoft.com/iep