blob saget Skrevet 13. april 2009 Del Skrevet 13. april 2009 Hei. Driver nå for moroskyld med å lære meg ActionScript og Flash CS3 ordentlig. I den forbindelse skal jeg lage et program med spørsmål hvor man må velge mellom noen forskjellige svaralternativer. Derfor må jeg bruke radioknapper i programmet, og har tenkt til å ha 3-4 svaralternativer til hvert spørsmål, pluss en resultatiside som forteller hvilke(t) svar som man svarte riktig/feil på osv. Spørsmålet mitt er som følger, hvordan skal jeg starte med koden? Skal spørsmål og svar i to tabeller? Hvordan kobler jeg hver radioknapp til spørsmål og svaret, og bestemmer hvilket svar som er riktig? Hvordan får man resultatet ut? Det er kanskje mye å be om alt dette, men jeg trenger altså ikke en fullverdig kode som er ferdigformulert, bare noen råd til hva slags koder jeg skal bruke og hvordan man skal gjøre ting. Beklager at det er litt dårlig formulert, men har dårlig tid på meg akkurat nå... Takk på forhånd. Lenke til kommentar
mjskovly Skrevet 15. april 2009 Del Skrevet 15. april 2009 Hei. Driver nå for moroskyld med å lære meg ActionScript og Flash CS3 ordentlig. I den forbindelse skal jeg lage et program med spørsmål hvor man må velge mellom noen forskjellige svaralternativer. Derfor må jeg bruke radioknapper i programmet, og har tenkt til å ha 3-4 svaralternativer til hvert spørsmål, pluss en resultatiside som forteller hvilke(t) svar som man svarte riktig/feil på osv. Spørsmålet mitt er som følger, hvordan skal jeg starte med koden? Skal spørsmål og svar i to tabeller? Hvordan kobler jeg hver radioknapp til spørsmål og svaret, og bestemmer hvilket svar som er riktig? Hvordan får man resultatet ut? Det er kanskje mye å be om alt dette, men jeg trenger altså ikke en fullverdig kode som er ferdigformulert, bare noen råd til hva slags koder jeg skal bruke og hvordan man skal gjøre ting. Beklager at det er litt dårlig formulert, men har dårlig tid på meg akkurat nå... Takk på forhånd. Radioknapper er litt spesielle, du egentlig bare en knappelytter <randomKnapp>.addEventListener(MouseEvent.CLICK, <funskjonnavn>); Her er koden fra en primitiv kalkulator jeg har lagd: import fl.controls.*; compKnapp.addEventListener(MouseEvent.CLICK, mouseClick); function mouseClick(mEvent:MouseEvent):void { var radioGroup:RadioButtonGroup = radio_pluss.group; var radioSelect:RadioButton = radioGroup.selection; var input1:Number = Number(compInput1.text); var input2:Number = Number(compInput2.text); var res:Number; if(radioSelect.label == "Pluss") res = input1 + input2; else if(radioSelect.label == "Minus") res = input1 - input2; else if(radioSelect.label == "Gange") res = input1 * input2; else res = input1 / input2; compResultat.text = String(res); } Husk ,import fl.controls.*;, i starten av koden. I dette eksempelet har radioknappene forskjellige "labels", navn. En knapp heter f.eks. Pluss, og if testen sjekker hvem av radioknappene som har blitt valgt. Jeg kan sikkert sende programmet til deg om du PM'er meg. I dette eksempelet brukte jeg en todimensjonal array, altså en array inne i en array. Beklager mye tekst ;-) var arrSporsmal:Array = new Array( new Array("hvor gjelder forbudsskilt hvis ikke annet er oppgit?", "Fra skiltet og til skiltet blir opphevet", "Fra skiltet og 250 meter framover", "Fra skiltet til nærmeste vegkryss", "Strekningen fra 50 meter til 250 meter etter skiltet", 3 ), new Array("Hvordan foretar du best mulig bremsing og unnastyring?", "brems, Kobling ned, slipp brems, styr unna.", "Brems, kobling ned, styr unna, slipp brems.", "Kobling ned, brems, styr unna, slipp brems.", 2 ), new Array("Regnes det som parkering dersom føreren sitter igjen i bilen mens en passasjer er for å handle?", "Ja", "Nei", "Ja, men bare hvis bilen står i mer enn 5 minutter", "Ja, men bare hvis bilen står i mer enn 15 minutter", 1 ) ); I arrSporsmal arrayen, vil spørsmålgruppa være mellom 0 og 2, f.eks. arrSporsmal([2]), og det spesifikke spørsmålet fra 0 til 3 inne i den arrayen, f.eks arrSporsmal([2][2]). Nummeret til det riktige svaret står til slutt i hver spørsmålsgruppe. var svarAvgitt:Boolean = false; var svarIndex:int = 0; var resultat:Array = new Array(resultat1, resultat2, resultat3, resultat4) txtAlt1.addEventListener(MouseEvent.CLICK,sjekkSvar); txtAlt2.addEventListener(MouseEvent.CLICK,sjekkSvar); txtAlt3.addEventListener(MouseEvent.CLICK,sjekkSvar); txtAlt4.addEventListener(MouseEvent.CLICK,sjekkSvar); neste.addEventListener(MouseEvent.CLICK,nesteSporsmal); function nesteSporsmal(evt:MouseEvent) { svarIndex++; settSporsmal(); } function settSporsmal() { txtSporsmal.text = arrSporsmal[svarIndex][0]; txtAlt1.text = arrSporsmal[svarIndex][1]; txtAlt2.text = arrSporsmal[svarIndex][2]; txtAlt3.text = arrSporsmal[svarIndex][3]; txtAlt4.text = arrSporsmal[svarIndex][4]; resultat1.gotoAndStop("Blank"); resultat2.gotoAndStop("Blank"); resultat3.gotoAndStop("Blank"); resultat4.gotoAndStop("Blank"); svarAvgitt=false(); } settSporsmal(); function sjekkSvar(evt:MouseEvent) { var svar:int = -1; if (svarAvgitt==true) return; svarAvgitt = true; if (evt.currentTarget == txtAlt1) { svar=1; } else if (evt.currentTarget == txtAlt2) { svar=2; } else if (evt.currentTarget == txtAlt3) { svar=3; } else if (evt.currentTarget == txtAlt4) { svar=4; } // slutt if /* if (svar==arrSporsmal[0][5]) { trace("Ja, det er riktig"); } else { trace("Nei, det er feil"); } */ resultat[svar-1].gotoAndStop("Galt"); resultat[arrSporsmal[0][5]-1].gotoAndStop("Riktig"); if(svarIndex==arrSporsmal.length-1)neste.visible = false; } // slutt function sjekkSvar Litt surrete svar, beklager det er litt seint! Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå