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 Class
Tä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 loppuu
eka 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 loppuu
Toivottavasti 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 Class
Kiitti 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.