2012-08-03 2 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) 

내가 그것을 어떻게 해결할 수 있습니까?

Dim web(num) As WebBrowser 

당신이 그것을 사용하기 전에 web(num)의 값을 설정해야합니다, 또는 그냥 null이 될 것입니다 : 여기

+0

, 난 당신이 [새 운영자] 또 다른 모습을 가지고해야한다고 생각 (HTTP ://msdn.microsoft.com/query/dev10.query?appId=Dev10IDEF1&l=KO-k&k=k%28VB.NEW%29;k%28TargetFrameworkMoniker-%22.NETFRAMEWORK%2cVERSION%3dV4.0%22%29;k% 28DevLang-VB % 29 & rd = true) MSDN 및 아마에서 요 기본 자습서를 몇 개 사용해야합니다. – jacqijvv

답변

2

당신이 null 참조의 배열을 만들 수 있습니다.

그냥 당신이 web(num)를 사용하기 전에

web(num) = New WebBrowser() 

을 포함하도록 코드를 변경합니다.

1

"new"키워드를 사용해야합니다.

모두 여기 여기

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 

과 : 언급 @dotTutorials처럼

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