Tos koodi:
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim nimet(0 To 5, 0 To 1) As String
nimet(0, 0) = "nimi"
nimet(1, 0) = "nimi"
nimet(2, 0) = "nimi"
nimet(3, 0) = "nimi"
nimet(4, 0) = "nimi"
nimet(5, 0) = "nimi"
nimet(0, 1) = "9"
nimet(1, 1) = "11"
nimet(2, 1) = "13"
nimet(3, 1) = "15"
nimet(4, 1) = "?"
nimet(5, 1) = "?"
End Sub
Private Sub nappi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles nappi.Click
tulos.Text = nimet(0, 0) 'Täs on se virhe
End Sub
End ClassTäs virhe:Name 'nimet' is not declared.
Eli toi kai tarkottaa et sitä taulukkoa ei ole esitelty , mutta mun mielest on et mikä vikan?
Käytössä microsoft visual basic 2005 express edition
ja oon aika aloittelia
Muuttujien näkyvyysalue-ongelmaltahan tuo vaikuttaisi.
Eli siis suomeksi:
Kun määrittelet muuttujan (dim plaaplaa) tuollaisen sub:in sisällä, se ei näy automaattisesti muille subeille tai koodilohkoille, paitsi lohkoille, jotka ovat määrittelysubin sisällä.
Esim:
määrittely
eka sub alkaa
Näkyy tänne!
eka sub loppuu
toinen sub alkaa
Näkyy tänne!
toinen sub loppuueka sub alkaa
muuttujan määrittely
looppi alkaa
näkyy tänne!
looppi loppuu
eka sub loppuu
toka sub alkaa
Ei näy tänne!!
toka sub loppuuToivottavasti oli helppo selitys, kun kerta olet aloittelija :)
Kokeile näin:
Public Class Form1
Dim nimet(0 To 5, 0 To 1) As String
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
nimet(0, 0) = "nimi"
nimet(1, 0) = "nimi"
nimet(2, 0) = "nimi"
nimet(3, 0) = "nimi"
nimet(4, 0) = "nimi"
nimet(5, 0) = "nimi"
nimet(0, 1) = "9"
nimet(1, 1) = "11"
nimet(2, 1) = "13"
nimet(3, 1) = "15"
nimet(4, 1) = "?"
nimet(5, 1) = "?"
End Sub
Private Sub nappi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles nappi.Click
tulos.Text = nimet(0, 0) 'Täs on se virhe
End Sub
End ClassKiitti tosi tosi paljon! Mul on ollu muitaki onglemii noitte muuttujien kans mut nyt toimii kiitti!
Aihe on jo aika vanha, joten et voi enää vastata siihen.