La référence d'objet n'est pas définie à une instance d'un objet

Résolu/Fermé
Messages postés
23
Date d'inscription
vendredi 21 décembre 2018
Statut
Membre
Dernière intervention
2 janvier 2021
-
Messages postés
23
Date d'inscription
vendredi 21 décembre 2018
Statut
Membre
Dernière intervention
2 janvier 2021
-
Bonjour, je crée un navigateur web (avec onglets) en VB.net mais c'est là le problème...
Quand je clique sur Nouvel onglet, ça met : La référence d'objet n'est pas définie à une instance d'un objet.
Code :

Dim navi As New WebBrowser

Me.TabControl1.TabPages.Add("TabPage1", "Onglet")

Me.TabControl1.TabPages("Onglet").Controls.Add(navi)

3 réponses

Messages postés
34711
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 janvier 2022
4 000
Bonjour,

Alors déjà.. non... tu ne créés pas de navigateur web...
Tu ne fais qu'utiliser le composant "webbrowser" fourni par .NET et qui se sert du moteur d'internet explorer (ou version plus récente éventuellement...)

Ensuite, tu as oublié d'instancier l'objet TabPages non ?
Un truc du genre :
Dim TabControl1 As New TabControl 
Dim tabPage As New TabPage(url) 
tabPage.Controls.Add(navi)


Sinon tu peux regarder le code fourni ici qui devrait t'aider
https://social.msdn.microsoft.com/Forums/sqlserver/en-US/6f3d0f01-9bcb-40fa-b24e-405c519e4c7d/how-to-make-a-tabbed-webbrowser?forum=vbgeneral






Cordialement,
Jordane
Messages postés
23
Date d'inscription
vendredi 21 décembre 2018
Statut
Membre
Dernière intervention
2 janvier 2021

C'est pas très clair... Je vais trouver une solution
Messages postés
18316
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 janvier 2022
1 003
bonjour, à quelle ligne se rapporte le message d'erreur?

moi j’essaierais plutôt:
Dim navi As New WebBrowser
Me.TabControl1.TabPages.Add("cle_unique", "nom_visible")
Me.TabControl1.TabPages("cle_unique").Controls.Add(navi)
Messages postés
23
Date d'inscription
vendredi 21 décembre 2018
Statut
Membre
Dernière intervention
2 janvier 2021

le troisième
Messages postés
18316
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 janvier 2022
1 003 >
Messages postés
23
Date d'inscription
vendredi 21 décembre 2018
Statut
Membre
Dernière intervention
2 janvier 2021

as-tu essayé ma suggestion?

pour tester, tu peux aussi modifier
Me.TabControl1.TabPages("Onglet").Controls.Add(navi)

en et faire:
dim page as TabPage
page = Me.TabControl1.TabPages("Onglet")
page.Controls.Add(navi)

et ensuite voir à quelle ligne se produit l'erreur.
Messages postés
23
Date d'inscription
vendredi 21 décembre 2018
Statut
Membre
Dernière intervention
2 janvier 2021
>
Messages postés
18316
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 janvier 2022

Oh merci ça marche ton truc ;)
Messages postés
23
Date d'inscription
vendredi 21 décembre 2018
Statut
Membre
Dernière intervention
2 janvier 2021

J'ai maintenant trouvé :

Dim page As New TabPage
Dim navi As New WebBrowser
navi.Dock = DockStyle.Fill
page.Controls.Add(navi)
TabControl1.Controls.Add(page)