Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

VB 2008 - WebBrowser mit Tabs

Frage Entwicklung VB for Applications

Mitglied: beckslevel91

beckslevel91 (Level 1) - Jetzt verbinden

26.05.2009, aktualisiert 15:55 Uhr, 6447 Aufrufe, 1 Kommentar

Hey Leute, ich habe ein Problem, dass mich fast zur Verzweiflung treibt...

ich benutze VB 2008 Express und möchte einen Webbrowser schreiben. Nun bin ich schon sehr weit. Jetzt will ich eine "Tab-Funktion" einbauen und habe auch schon einen Code, der mir das ermöglicht:

01.
Public Class Form1 
02.
 
03.
    Dim CurrBrowser As WebBrowser 
04.
 
05.
 
06.
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
07.
 
08.
        ' Alle Tabs entfernen 
09.
        Me.TabControl1.TabPages.Clear() 
10.
        AddTab("Neuer Tab...", "about:blank") 
11.
 
12.
        ' Jetzigen Browser auslesen 
13.
        GetCurrBrowser() 
14.
 
15.
    End Sub 
16.
 
17.
    Private Sub ComboBox1_KeyDown(ByVal sender As System.Object, ByVal e As KeyEventArgs) Handles ComboBox1.KeyDown 
18.
 
19.
        ' Wenn ENTER gedrückt wird navigieren und zur 
20.
        ' ComoBox hinzufügen. 
21.
        If e.KeyCode = Keys.Enter Then 
22.
            CurrBrowser.Navigate(Me.ComboBox1.Text) 
23.
            Me.ComboBox1.Items.Add(Me.ComboBox1.Text) 
24.
        End If 
25.
 
26.
    End Sub 
27.
 
28.
    Private Sub TabPage1_TabIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TabControl1.TabIndexChanged 
29.
        GetCurrBrowser() 
30.
    End Sub 
31.
 
32.
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
33.
 
34.
        ' Tab hinzufügen siehe "Sub AddTab()" 
35.
        AddTab("Neuer Tab...", "about:blank") 
36.
 
37.
    End Sub 
38.
 
39.
    Private Sub wb_DocumentCompleted(ByVal sender As Object, ByVal e As WebBrowserDocumentCompletedEventArgs) 
40.
 
41.
        ' TabTitel in den Titel der Website ändern 
42.
        Me.TabControl1.SelectedTab.Text = CurrBrowser.DocumentTitle 
43.
 
44.
        ' Wenn man zu "about:blank" navigiert wird der Titel zu "" geändert da 
45.
        ' es eine leere seite ist.. 
46.
        If e.Url.AbsoluteUri = "about:blank" Then 
47.
            Me.TabControl1.SelectedTab.Text = "Neuer Tab..." 
48.
        End If 
49.
 
50.
    End Sub 
51.
 
52.
    Private Sub wb_Navigating(ByVal sender As Object, ByVal e As WebBrowserNavigatingEventArgs) 
53.
 
54.
        ' Während die Seite geladen wird "Laden ..." als Titel verwenden (macht einen kleinen Eindruck)  :P 
55.
        Me.TabControl1.SelectedTab.Text = "Laden ..." 
56.
        Me.ComboBox1.Text = CurrBrowser.Url.AbsoluteUri 
57.
 
58.
    End Sub 
59.
 
60.
    Private Sub wb_Navigated(ByVal sender As Object, ByVal e As WebBrowserNavigatedEventArgs) 
61.
 
62.
        ' Text in ComboBox zum absoluten URI ändern.. Sprich wenn du www.google.de oder 
63.
        ' google.de ein giebst -> http://www.google.de/    ;) 
64.
        ' Hier kannst du auch das  "Me.ComboBox1.Items.Add(Me.ComboBox1.Text)" hin 
65.
        ' verschieben statt gleich nach ENTER (oben) wird dan der komplette URI  
66.
        ' zur Liste hinzugefügt  :D 
67.
 
68.
        Me.ComboBox1.Text = CurrBrowser.Url.AbsoluteUri 
69.
 
70.
    End Sub 
71.
 
72.
    Sub AddTab(ByVal name As String, ByVal url As String) 
73.
 
74.
        Dim tab As TabPage = New TabPage(name) 
75.
        Dim wb As WebBrowser = New WebBrowser 
76.
 
77.
        ' Zur Seite "url" navigieren 
78.
        wb.Navigate(url) 
79.
        wb.Dock = DockStyle.Fill 
80.
 
81.
        ' Den Browser zur TabPage hinzufügen 
82.
        tab.Controls.Add(wb) 
83.
 
84.
        ' Einen EventHandler des WebBrowsers (DocumentCompleted & Navigating) hinzufügen 
85.
        AddHandler wb.DocumentCompleted, AddressOf wb_DocumentCompleted 
86.
        AddHandler wb.Navigating, AddressOf wb_Navigating 
87.
        AddHandler wb.Navigated, AddressOf wb_Navigated 
88.
 
89.
        ' Tab zum TabControl hinzüfügen 
90.
        Me.TabControl1.TabPages.Add(tab) 
91.
 
92.
    End Sub 
93.
 
94.
    Sub GetCurrBrowser() 
95.
 
96.
        ' CurrBrowser auf den Browser des ausgewählten Tabs setzen 
97.
        For Each wb As WebBrowser In Me.TabControl1.SelectedTab.Controls 
98.
            CurrBrowser = wb 
99.
            Exit For 
100.
        Next 
101.
 
102.
    End Sub 
103.
End Class
( http://www.vb-magazin.de/forums/forums/t/4428.aspx )

Das mit den neuen Tabs funktioniert soweit, aber wenn ich dann eine url eingebe zeigt er im Titel des bspw. 2. Tabs den Titel an, die Webseite allerdings wird im Tab1 angezeigt, egal in welchem Tab ich eine Webseite öffnen will, diese wird immer im ersten Tab angezeigt..

Weiß jemand woran das liegt?

MfG,

J.R.
Mitglied: godlie
26.05.2009 um 16:47 Uhr
Hallo,

dein Fehler liegt wahrscheinlich in der FKT GetCurrBrowser, könnte ich mir denken.
Ich würde hier eher über eine Variable in der Klasse arbeiten, welche ich bei:
01.
Private Sub TabPage1_TabIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)

auf den sender binde.

Aber jetzt mal ehrlich warum tust du dir das an?
Schon mal über Threads was gehört? Das laden der Webseiten würd ich immer in nen Thread Packen damit der Krempel sich mit anderen Dingen derweilen
austoben kann.
Was für ne Auslastung auf dem PC kreigt den dieser Webbrowser so, wenn sagen wir 4 Flash Sites + Webradio + Chat am laufen ist?

grüße
Bitte warten ..
Ähnliche Inhalte
Visual Studio
Mit VBA die Tasenkombination AltGr+Tab oder Alt+Tab simulieren
gelöst Frage von UschadeVisual Studio5 Kommentare

Hallo liebe Admins, ich möchte auf unseren Terminals, an denen keine Tastatur angeschlossen ist, den Mitarbeitern die Möglichkeit geben ...

VB for Applications
Webbrowser onClick auswälen
gelöst Frage von soritoseVB for Applications5 Kommentare

hallo ich bin neu im vb und habe noch nicht fiel geschafft und habe da mal eine frage an ...

Router & Routing
Über Webbrowser von aussen auf Alarmanlage zugreifen!
gelöst Frage von mike7050Router & Routing6 Kommentare

Hallo, ich habe vor Ort eine installierte Alarmanlage von Abus. Diese ist intern über den Webbrowser unter 192.168.1.30 zu ...

Webentwicklung
Beziehungen in Webbrowser dynamisch darstellen
gelöst Frage von ATVATVWebentwicklung1 Kommentar

Hallo Administratoren, kennt ihr eine Software, mit der Beziehungen dynamisch im Browser angezeigt werden können? Ich meine ein Diagramm, ...

Neue Wissensbeiträge
Windows 10

Windows 10 v1709 EN murkst bei den Regionseinstellungen

Tipp von DerWoWusste vor 4 MinutenWindows 10

Dieser kurze Tipp richtet sich an den kleinen Personenkreis, der Win10 v1709 frisch installiert und dabei die englische Version ...

Webbrowser

Kein Ton bei Firefox Quantum über RDP

Tipp von Moddry vor 20 MinutenWebbrowser

Hallo Kollegen! Hatte das Problem, dass der neue Firefox bei mir auf der Kiste keinen Ton hat, wenn ich ...

Internet

EU-DSGVO: WHOIS soll weniger Informationen liefern

Information von sabines vor 12 StundenInternet4 Kommentare

Wegen der europäische Datenschutzgrundverordnung stehen die Prozesse um die Registrierung von Domains auf dem Prüfstand. Sollte die Forderungen umgesetzt ...

Verschlüsselung & Zertifikate

19 Jahre alter Angriff auf TLS funktioniert immer noch

Information von BassFishFox vor 18 StundenVerschlüsselung & Zertifikate1 Kommentar

Interessant zu lesen. Der Bleichenbacher-Angriff gilt unter Kryptographen als Klassiker, trotzdem funktioniert er oft noch. Wie wir herausgefunden haben, ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
Von rj11 auf rj45
Frage von jensgebkenLAN, WAN, Wireless19 Kommentare

Hallo Gemeinschaft, könnt ihr mir vielleicht bei der anfertigung eines Kabels helfen - habe ein rj 11 stecker und ...

Netzwerkmanagement
NAS über zwei weitere Ethernet Anschlüsse verbinden
gelöst Frage von Sibelius001Netzwerkmanagement17 Kommentare

Sorry - ich bin hier wahrscheinlich als kompetter IT Trottel unterwegs. Aber eventuell kann mir jemand ganz einfach helfen: ...

Netzwerkmanagement
Firefox Profieles im Roaming
gelöst Frage von Hendrik2586Netzwerkmanagement17 Kommentare

Hallo liebe Leute. :) Ich hab da ein kleines Problem, welches anscheinend nicht unbekannt ist. Wir nutzen hier in ...

LAN, WAN, Wireless
Häufig Probleme beim Anmelden in WLAN
Frage von mabue88LAN, WAN, Wireless15 Kommentare

Hallo zusammen, in einem Netzwerk gibt es relativ häufig (1-2 mal pro Woche) Probleme mit der WLAN-Verbindung. Zunächst mal ...