Avatar billede mega-hawk Nybegynder
09. august 2009 - 13:22 Der er 6 kommentarer og
1 løsning

lykke i list arry, hvordan?

Jeg har lavet 2 lister som arry altså list1(0) og list1(1)
Der bliver så indsat nogle tal og de tal i den enkelte liste skal ligges sammen.
Jeg har følgende kode til det:

Dim id, total As Integer

For id = 0 To Main_form.List1(0).ListCount - 1
total = Val(Main_form.List1(0).Text)
Next


men jeg mangler noget med min id.
men hverken
total = Val(Main_form.List1(0).Text)(id)
eller
total = Val(Main_form.List1(0,id).Text)
virker så hvor skal jeg så smide min id hen så den løber hele listen igennem?
Avatar billede olebole Juniormester
09. august 2009 - 15:27 #1
<ole>

Det kan jeg ikke få til at give mening. Prøv at vise, hvad det egentlig er, du gør. Hvad hedder dine arrays, f.eks?

/mvh
</bole>
Avatar billede mega-hawk Nybegynder
09. august 2009 - 16:40 #2
he he dejligt at vide jeg gør en masse forkert ;o)
Nå ja men jeg prøve at se hvor godt jeg kan udbybe den.

Jeg har min main form som indeholder 2 listboxe som jeg har sat ind som arry skulle jeg mene.
Altså først den ene. Så kopier den og sæt ind og svare ja til de skal være der som arry.
Så har jeg i en anden form jeg kalder for min tilfoj form nogle tekstboxe hvor jeg tilføjer nogle tal i som så bliver gemt i mine listboxe på min main form.
Det virker også som det skal.
Men så har jeg for neden en label hvis caption skal ændre sig til alle tal i list1(0) når de er sammenlagt.
Altså hvis jeg nu i min list1(0) tilføjer tallene 1 og 2 og 3 skal min label caption være 6.

Deraf min kode som ser sådan her ud som tidliger nævnt:

For id = 0 To Main_form.List1(0).ListCount - 1
total = Val(Main_form.List1(0).Text)
Next

Det er ikke sikkert det er rigtig hvad jeg laver, men jeg har tidliger lavet noget lignene hvor koden ser sådan her ud og det virkede.

For id = 0 To list1.ListCount - 1
arry = list1.List(id)
tot = Val(arry) + Val(tot)
total.Caption = tot
Next

Forskelen fra den gang og til nu var at den gang havde jeg list1 og list 2 og list 3 osv...
Nu prøver jeg at lave det igen bare som list1(0), list1(1) og list1(2) osv osv...

Håber i forstår hvor jeg vil hen med det...
Avatar billede olebole Juniormester
09. august 2009 - 18:55 #3
Prøv:

total = 0
For id = 0 To Main_form.List1(0).ListCount - 1
    total = total + Val(Main_form.List1(0).List(id))
Next
MsgBox total, 0, "Resultat"
Avatar billede mega-hawk Nybegynder
09. august 2009 - 19:29 #4
Hold da op hvor er det da bare fantastisk det virker jo.
Det jeg bare elsker ved Visual basic er at det på mange måder er mega logisk.
Det jeg hader er så at det til tider bliver så logisk jeg ik kan se skoven for bare træer he he.
Nå men så lige et spørgsmål da.
Den der main_form.List1(0) Det jo min listbox så kommer der .list hvad er det lige den er til?
Jeg kan huske at jeg bare gik den systematisk igennem den gang ind til det virkede.

Nå men olebole.. Der er sgu points til dig hvis du smider et svar og jeg siger tak
Avatar billede olebole Juniormester
09. august 2009 - 22:24 #5
Selvtak  =)

List er en property på ListBox kontrollen - et array af ListBox'ens elementer:
    http://msdn.microsoft.com/en-us/library/aa235158(VS.60).aspx
Avatar billede olebole Juniormester
09. august 2009 - 22:27 #6
Gem denne URL til referencen:
    http://msdn.microsoft.com/en-us/library/aa338032(VS.60).aspx

Der finder du både en sprog- og en kontrolreference. Læg altid mærke til de links lige under navnet:
    See Also, Example og Applies To

- der kan du ofte finde noget af interesse  ;o)
Avatar billede olebole Juniormester
10. august 2009 - 22:21 #7
Tak for points  =)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester