top of page
Bestil fra katalog

Denne vejledning tager udgangspunkt i at du har designet en skærm med et varekatalog til en restaurant. Når kunden tilføjer en vare til sin indkøbskurv opdateres de to labels i toppen (antal og samlet pris). Når kunden klikker på kurven, skiftes til en skærm som viser den samlede ordre.

3-1.PNG

 

1. Begynd med at definere variablene antalVarer og samletPris, hvis værdier skal skrives i de to labels hver gang der sker en forøgelse af bestillingen.

3-2.PNG

 

2. Opret en  onEvent  for den første vare i kataloget, Pepperoni pizzaen, som skal kunne bestilles ved at klikke på  + .

3-3.PNG

 

3. Opdater variablen antalVarer ved at lægge én til den.

3-4.PNG

 

3a. Opdater variablen samletPris ved at lægge 75 kr. til den.

3-5.PNG

 

4. Træk to  setText  kommandoer ind som skal få vist de opdaterede værdier for antal bestilte varer og for den samlede pris i brugergrænsefladen.

3-6.PNG

 

5. Tjek at det virker ved at vælge en masse pepperoni pizzaer og lægge mærke til at de to labels bliver opdateret korrekt.

3-7.PNG

​

6. Erklær en variabel, kald den kurv og angiv startværdien til  [ ] , altså to kantparenteser. Det betyder at variablen er en tom liste, som man nu kan føje elementer til, som er af samme datatype. I dette tilfælde bliver der tale om de pizzanavne kunden bestiller. 

3-8.PNG

 

7. Opret en ny skærm, screenBestilling, og indsæt en label, Din bestilling, og et text_area til at vise bestillingen.

Træk kommandoen  appendItem  over i Linje 9 og angiv listenavnet til kurv og angiv data der skal tilføjes listen til "Pepperoni".

3-9.PNG

 

8. Som forberedelse til at kunne lægge andre varer i kurven, skal du oprette en funktion og kalde den bestilVare.

3-10.PNG

 

9. Marker blokkene og træk dem op i funktionen bestilVare.

3-11.PNG

 

10. Resultatet skal se sådan ud.

3-12.PNG

 

11. Træk et funktionskald til bestilVare over i hændselsesproceduren til buttonPepperoni.

3-13.PNG

 

12. Klik to gange på den lille pil yderst til højre på funktionskaldet (Trin 1) for at skabe to pladsholdere til parameterværdier, der skal sendes sammen med funktionskaldet.

3-14.PNG

 

13. Indtast "Pepperoni" (Trin 1) og 75 (Trin 2) som  de parameterværdier der svarer til den aktuelle pizza.

3-15.PNG

 

14. Klik to gange på den lille pil yderst til højre på funktionen bestilVare (Trin 1) og indtast vareNavn (Trin 2) og varePris (Trin 3) som de parametre (lokale variable) du skal bruge i funktionen .

3-16.PNG

 

15. Erstat "Pepperoni" med vareNavn  (Trin 1) og indtast varePris i stedet for 75.00 (Trin 2). På denne måde udfører funktionen den samme sekvens, men med forskellige data (varenavn og pris) som input.

3-17.PNG

 

16. Nu kommer det "sjove", når du kan gentage processen for en pizza mere (Margaritha) blot ved at kode Linje 14 til 16 med parameterværdier, som svarer til den pågældende pizza. Du kan bygge videre på idéen med så mange pizzaer du har lyst til ved at lave en hændelsesprocedure til dem hver med et funktionskald der har de rigtige parameterværdier.

3-18.PNG

 

Vis bestillingen på en ny skærm

​

Indtil nu har du lagt varer i kurven og opdateret kurveikonet med antal varer og deres samlede pris. Når kunden er færdig med at shoppe, klikkes der på kurveikonet i forventning om at komme til en ordreside.

​

17. Lav en  onEvent  til buttonKurv og erklær en variabel textBestilling til opbygning af den tekst der skal vises i text_areaBestilling..

3-22.png

​

18. Træk en  FOR-løkke  over, som skal bruges til at gennemløbe listen kurv, som indeholder de pizzaer kunden har bestilt

3-23.png

​

19. Variablen  er en tællevariabel der begynder ved listens element nummer 0 og stopper ved det sidste element på listen, hvis nummer er 'listens længde minus 1', netop fordi man begynder med 0. Det kan klares ved at angive, at løkken skal standse inden  bliver lig med listens længde. For at gøre det skal du trække kommandoen  str.length  over i stedet for 4-tallet.

3-24.PNG

 

20. Indtast listenavnet kurv i stedet for str.

3-25.PNG

 

21. Træk en tildelingsblok ind i Linje 20 og indtast, som vist herunder, for at tilføje teksten for den pizza løkken er kommet til, det vil sige kurv[i], til den tekst der er der i forvejen fra de foregående pizzaer.

3-26.PNG

 

22. Tilføj Linje 21 som indsætter et linjeskift efter hver ny pizza i bestillingen..

3-27.png

 

23. Tilføj Linje 23 som tilføjer en ekstra linje med den samlede pris efter listen med bestilte pizzaer. 

3-28.PNG

 

23. Tilføj Linje 24  som skriver bestillingen i det text_area du har gjort klar. Tilføj også en  setScreen  til bestillingsskærmen i Linje 25.

3-29.PNG

 

23. Tilføj en Tilbage-knap til den skærm kunden kom fra.

3-30.png

 

Tjek at det virker.

bottom of page