Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: Listan arpominen

Matrack [17.03.2005 14:37:25]

#

On päässyt unohtumaan miten vb:ssä tehdään seuraava:

List1:ssä on 18 kohdetta. Command -nappia painamalla pitäisi List1:stä arpoa niiden 18 kohteen järjestys List2:een.

Miten olisi kaikista paras toteuttaa?

hunajavohveli [17.03.2005 16:17:59]

#

Arvot jonkin kohdan listasta. Sitten kopioit tuon kohdan toiseen listboxiin ja poistat saman kohdan alkuperäisestä. Siten määrä vähenee yhdellä ja arvot taas jonkin luvun tuolta väliltä, lisäät, poistat jne. kunnes alkuperäinen lista on tyhjä.

Pieni esimerkki, joka arpoo kohdat yksitellen. Tuohon vain kehittelet jonkinmoisen loopin, joka päättyy, kun ListCount on 0, eli kun lista on tyhjä.

Private Sub Command1_Click()

Dim kohta As Integer

kohta = Int(Rnd * List1.ListCount)
List2.AddItem List1.List(kohta)
List1.RemoveItem kohta

End Sub

Jos kohdat eivät saa kadota alkuperäisestä listasta, suosittelen, että kopioit listan taulukkoon, ja arvot ne sieltä.

Vastaus

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

Tietoa sivustosta