PDA

Volledige versie bekijken : rangschikken op numerieke volgorde


Coumans
%Europe/Berlin %505 %2005, 13:08
Hey,

ik ben op dit moment bezig met een scorebord voor een soort songfestival.
Ik heb voor iedere artiest een movieclip aangemaakt met daarin zijn/haar naam, titel lied en een dynamic text veld, genaamd deelnemerX (X staat voor nummer artiest, gaat van 1 t/m 7).
Op het totale score overzicht staan dus 7 movieclips onder elkaar.

Het is de bedoeling dat er iedere keer direct na het zingen van een liedje een input text veld in beeld komt waarin ik het punt van de jury kan invullen (genaamd invoer1 t/m invoer7).

Het volgende scherm zou dan weer het totaal overzicht moeten zijn, maar dan met de actuele scores verwerkt op volgorde van hoog naar laag.

Wat ik dus doe is de waarde die ik invul bij invoer1 overhevelen naar deelnemer1, en zo verder voor de overige deelnemers (dus middels deelnemer1 = _root.invoer1, enz)

Maar hoe kan ik nu waarde van elke deelnemer laten vergelijken met de waarde van alle andere deelnemers en ze vervolgens op de juiste y-waarde plaatsen zodat ze in numerieke volgorde staan?

Ik ben al eens begonnen met 'if' en 'if else' constructies, maar dat is uiteraard veel te omslachtig. Er zijn namelijk zoveel verschillende mogelijkheden... :S
'T moet toch ook wel op één of andere manier met een variabele kunnen?


Hopelijk kan iemand me verder helpen! Alvast bedankt!

TheDutch
%Europe/Berlin %548 %2005, 14:09
Multi-dimensional array maken met score en deelnemer. Vervolgens de array sorteren op score en de MovieClips aan de hand van de array op de juist Y coordinaat plaatsen. :).

Coumans
%Europe/Berlin %356 %2005, 09:33
Hmmm.... tnx voor je reactie.
Maarre, ik heb eigenlijk nooit gewerkt met een array. Heb je niet een klein stukje code/voorbeeld voor me waarmee ik aan de slag kan?

theFlashWizard
%Europe/Berlin %471 %2005, 12:19
array's
http://www.actionscripts.org/tutorials/intermediate/Arrays/index.shtml

en in flash help staat per method beschreven wat je met een array kan doen..

Coumans
%Europe/Berlin %365 %2005, 09:46
okee, ik heb eens liggen klooien met een array en ik begrijp nu wel enigzins hoe dat allemaal werkt. Alleen zo'n multidimensional array kom ik niet wijs uit.

Ik ben nu tot het volgende gekomen. Echter, het werkt nog steeds niet goed...

- Op frame 1 heb ik 3 input text velden genaamd nr1, nr2 en nr3

- Op frame 2 heb ik 3 movieclips staan genaamd deelnemernr1, deelnemernr2 en deelnemernr3. In elke movieclip staat een dynamisch tekstvlak, respectievelijk genaamd uitvoer1, uitvoer2 en uitvoer3

- Aan frame 2 heb ik het volgende script gehangen:
test=[nr1, nr2, nr3]

test.sortOn(16)
trace(test)

deelnemernr1.uitvoer1 = nr1
deelnemernr2.uitvoer2 = nr2
deelnemernr3.uitvoer3 = nr3

setProperty((deelnemer add test[0]), _y, 25);
setProperty((deelnemer add test[0]), _x, 50);

setProperty((deelnemer add test[1]), _y, 150);
setProperty((deelnemer add test[1]), _x, 50);

setProperty((deelnemer add test[2]), _y, 275);
setProperty((deelnemer add test[2]), _x, 50);


De waardes die ik invul op frame 1 worden wel overgezet naar de tekstvlakken op frame 2, echter ze worden niet op het juiste y-coördinaat gezet.
Daarnaast werkt het sorteren van de array alleen als ik bij waardes onder de 10 blijf. Dit staat ook wel zo aangegeven in de Flash-help, maar er staat niet (duidelijk) bij hoe dit te verhelpen is.

Kan iemand mij verder helpen, please?