2012-08-03 3 views
0

Вот мой код:Ссылка на объект не указывает на экземпляр объекта

Dim num as integer = 0 
    For Each s As String In ListBox1.Items 
     num = num + 1 
     Dim web(num) As WebBrowser 
     RefreshIESettings(s) 
     Web(num).Navigate("http://www.google.com") 'There's the error 
     wait("5000") 
     MsgBox(Web(num).Document.Title) 
    Next 

И я получаю эту ошибку только тогда, когда я делаю это:

Dim webb As WebBrowser 
    RefreshIESettings(s) 
    Webb.Navigate("http://www.google.com") 'Here too 
    wait("5000") 
    MsgBox(Webb.Document.Title) 

Как я могу решить эту проблему?

+0

Как @dotTutorials упоминалось, я думаю, вы должны еще раз взглянуть на [Новый оператор] (HTTP://msdn.microsoft.com/query/dev10.query?appId=Dev10IDEF1&l=EN-US&k=k%28VB.NEW%29;k%28TargetFrameworkMoniker-%22.NETFRAMEWORK%2cVERSION%3dV4.0%22%29;k% 28DevLang-VB% 29 & rd = true) из MSDN и, возможно, лет u должен сделать некоторые базовые учебники. – jacqijvv

ответ

2

Здесь вы создаете массив нулевых ссылок:

Dim web(num) As WebBrowser 

Вам нужно установить значение web(num) перед его использованием, или это будет просто пустым.

Просто измените свой код, чтобы включить

web(num) = New WebBrowser() 

, прежде чем использовать web(num).

1

Вам нужно использовать «новое» ключевое слово.

И здесь:

Dim num as integer = 0 
    For Each s As String In ListBox1.Items 
        num = num + 1 
        Dim web(num) As WebBrowser = new WebBrowser() 
        RefreshIESettings(s) 
        Web(num).Navigate("http://www.google.com") 
        wait("5000") 
        MsgBox(Web(num).Document.Title) 
    Next 

И здесь:

Dim webb As WebBrowser = new WebBrowser() 
    RefreshIESettings(s) 
    Webb.Navigate("http://www.google.com") 
    wait("5000") 
    MsgBox(Webb.Document.Title) 

 Смежные вопросы

  • Нет связанных вопросов^_^