Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: vieläkin listauksessa ongelmia.... (vb)

julius_88 [01.11.2003 11:22:18]

#

Mul on lista:

Private Sub Form_Load()

   List1.AddItem "1"
   List1.AddItem "2"
   List1.AddItem "3"
   List1.AddItem "4"
   List1.AddItem "5"
'.....                  '99 saakka, en jaksanu kopioida
List1.AddItem "99"


Private Sub laske_Click()

Dim kohta As String
   kohta = List1.List(List1.ListIndex)
   Select Case kohta
   Case "1"
       bronze.Text = (0 - Text1.Text) / 18.75
       iron.Text = "Not enough levels"
       steel.Text = "Not enough levels"
       mith.Text = "Not enough levels"
       addy.Text = "Not enough levels"
       rune.Text = "Not enough levels"
   Case "2"
       bronze.Text = (83 - Text1.Text) / 18.75
       iron.Text = "Not enough levels"
       steel.Text = "Not enough levels"
       mith.Text = "Not enough levels"
       addy.Text = "Not enough levels"
       rune.Text = "Not enough levels"

'sitte näitäki melkee 99 saakka,

miks ei toimi...

julius_88 [01.11.2003 11:57:36]

#

nyt se väittää et tossa on virhe joka sanoo= object not an array

Dim kohta As String
   kohta = List1.List(List1.Index)   ' <---
   Select Case kohta

Antti Laaksonen [01.11.2003 12:08:02]

#

Virhe lienee siinä, että olet kirjoittanut List1.Index, vaikka kuuluisi olla List1.ListIndex.

Suosittelen myös opettelemaan For-silmukan käytön. Esimerkiksi tuon 99-rivisen koodin, joka lisää listaan numerot, voisi korvata tällä:

Dim i As Integer
For i = 1 To 99
    List1.AddItem i
Next

Sose [01.11.2003 12:08:59]

#

Tuon 1-99 voi tehdä näin pienemmällä määrällä koodia.

List1.AddItem "1"
List1.AddItem "2"
List1.AddItem "3"
List1.AddItem "4"
List1.AddItem "5"
..... '99 saakka, en jaksanu kopioida
List1.AddItem "99"

Tuon korvaat...

for i = 1 to 99
list1.additem i
next i

Jotenkin noin pitäisi toimia, tai sitten en enää muista mitään :|

~Sose~

Edit: virhe oikeinkirjoituksessa.
Edit2: Antti ehti ensin :)

julius_88 [01.11.2003 12:19:15]

#

ton tein, mut ei se auta yhtään mitää siihe "object not an array" ongelmaan....

hunajavohveli [01.11.2003 12:48:30]

#

pistä näin:

for i = 1 to 99
list1.additem str$(i)
next i

kato ku additemiin täytyy laittaa merkkijono-muuttuja. str$
muuttaa numeerisen muuttujan merkkijonoksi.

petrinm [01.11.2003 20:34:10]

#

mun mieletä vb:ssä pitää aina laittaa se arvo sulkuihin eli

For i = 1 to 99
List1.Additem (i)
Next i

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta