Een getal splitsen naar labels volgens waarde.(vb6)

Status
Niet open voor verdere reacties.

satriano17

Gebruiker
Lid geworden
30 sep 2012
Berichten
342
Dag (ik werk nog met vb6)

Ik heb een textbox 'text1.text' die een getal bevat
van willekeurige cijfers van 1-9 (ook gelijke cijfers)

bv:
11456889

Ik heb dan nog een array van labels
Het getal wordt dan gesplits in 9 labels met deze code
In elke label komt een cijfer
Code:
Private Sub Command1_Click()
For i = 1 To Len(Text1.Text)
Label1(i-1).Caption = Mid$(Text1.Text, i, 1)
Next i
End Sub

dit alles werkt....bijna goed, want:
Stel nu dat het getal zo is:

43315678

met mijn code komt de '4' in de eerste label
de '3' in de tweede enz.

Ik zou willen da bv de '1' ongeacht waar zich bevind
altijd in de eerste label komt
ed dan de '3' altijd in de derde label komt
en de 2 in tweede enz.

bedank
satriano
ps. het getal in text1.text kan van willekeurige grootte zijn. Maar elke aanwezig waarde moet in een label
voorkomen zoveel keer dat aanwezig is.
Als bv de cijfer 1 twee keer komt in de getal dan moet in label1 twee keer worden weergegeven.
Als een cijfer ontbreekt dan blijf de label (van die cijfer/waarde) leeg.
 
Laatst bewerkt:
Hoi Satriano,

Wat ik voor zou stellen is:

Gebruiker de for loop die je nu hebt, om een array te vullen van alle nummers in het getal, laten we de array 'getallen' noemen.

Nadat alle nummers in een array zitten, kan je de array sorteren doormiddel van: Array.Sort(getallen)
Nu heb je de getallen van laag naar hoog gesorteerd, gebruik deze array nu om het label te vullen.

Je oplossing is dan ongeveer:

Code:
Private Sub Command1_Click()
Dim getallen(10) As Integer '10 is nu de maximale lengte van de array.

For i = 1 To Len(Text1.Text)
	getallen(i) = Mid$(Text1.Text, i, 1)
Next i

Array.sort(getallen)

For i = 1 To Len(getallen)
	Label1(i-1).Caption = getallen(i)
Next i
End Sub

Ik hoop dat het hiermee lukt, succes.
 
Ooi mathijsv
bedankt voor uw reactie maar

Het is (nog) niet gelukt.
Om twee reden:

Met 'Getallen' bedoel je een array van textboxen?
Ik heb wel een array 'Getallen' gemaakt maar gaat niet.

Of bedoel je een ander array?

dit commando of Syntax
Code:
Array.sort(getallen)

werkt niet in vb6 en ik kon niet iets anders vinden om dat te vervangen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan