Android apps met App Inventor 2

Maat: px
Weergave met pagina beginnen:

Download "Android apps met App Inventor 2"

Transcriptie

1 2015 Android apps met App Inventor 2 F. Vonk versie

2 inhoudsopgave 1. inleiding installatie ontwikkelomgeving Mollen Meppen Schrandere Scholier Meteoor Appendix A: projecten samenvoegen Dit werk is gelicenseerd onder een Creative Commons Naamsvermelding NietCommercieel GelijkDelen 3.0 Unported licentie Dit werk is gebaseerd op Android Apps met App Inventor; Coen Crombach, Robin Eggenkamp, François Vonk; 1 november De afbeelding op het voorblad is verkregen via INFOwrs. Copyright 2010 INFOwrs Serviços em informatica

3 1. inleiding Om apps te ontwikkelen bestaan een aantal ontwikkelomgevingen. De meest gebruikte, maar ook meest complexe, is Java met XML. Een alternatief is Basic4android. Voor beide moet je (voldoende) goed tekstueel kunnen programmeren. Een eenvoudiger alternatief is App Inventor 2. Dit is een drag and drop programmeeromgeving zoals GameMaker. Welkom bij de module Android apps met App Inventor 2. Deze module gaat je leren hoe je een aantal simpele apps maakt met deze ontwikkelomgeving. In dit boek worden enkele notaties gebruikt om het voor jou als lezer makkelijker leesbaar te maken: block: Blocks ga je gebruiken om te programmeren. Blocks in App Inventor worden weergegeven als puzzelstukjes. knop, menu of component: Knoppen, menuopties en componenten worden op deze manier aangegeven. In deze module kom je opgaves tegen die je moet maken om de lesstof te verwerken. De antwoorden kunnen in de les besproken worden. opgave Opgaves in blauw moet je maken. Er zijn ook bonus opgaves die je niet hoeft te maken maar waarvan het misschien wel slim en/of leuk is om het wel te doen. Ze bieden je in ieder geval extra oefenmateriaal. bonus opgave Opgaves in groen zijn facultatief en dienen als verdieping of om meer te oefenen. Let op, links in dit document hebben een rode kleur. Veel plezier en succes

4 2. installatie De App Inventor 2 ontwikkelomgeving draait in een webbrowser. Om toegang tot App Inventor 2 te krijgen heb je een Google account nodig. Je kunt zo n account aanvragen op: Google account. Als je een Google account (aangemaakt) hebt kun je inloggen via de volgende link: App Inventor 2. Daarna moet je App Inventor 2 toegang geven tot je Google account. Nadat je ingelogd bent, krijg je een aantal welkomst schermen. Als je die weg klikt, dan zie je een scherm zoals afgebeeld in Figuur 1. Figuur 1: het "My Projects" scherm Op school is alle software die App Inventor 2 nodig heeft al voor je geïnstalleerd. Maar als je thuis aan de slag gaat is dat misschien niet zo. Daarom volgen hierna de instructies om thuis te zorgen dat de App Inventor 2 ontwikkelomgeving goed werkt. Als je al een werkende omgeving hebt kun je meteen door naar het volgende hoofdstuk. thuis installeren Het is nu belangrijk dat je de software installeert die App Inventor 2 nodig heeft om de "Blocks Editor" en de emulator uit te voeren. Deze termen zullen je nu misschien nog niets zeggen en dat is op dit moment niet erg. Verderop in het materiaal zullen ze in detail behandeld worden. Het is nu belangrijk om op de "Get Started" link onder de Help menuoptie te klikken, zie Figuur 2. Figuur 2: de "Get Started" link - 3 -

5 Als je dit hebt gedaan zie je in je browser de pagina zoals afgebeeld in Figuur 3. Figuur 3: Getting Started webpagina Vervolgens klik je op link 1: "Setup Instructions" en volgt de instructies die je krijgt via de links bij "Option Two" en "Option Three"

6 3. ontwikkelomgeving waarschuwing Voordat we van start gaan met App Inventor 2 een kleine waarschuwing. De ontwikkelomgeving is niet altijd even snel en het gaat niet sneller door veelvuldig op links of knoppen te klikken. Sterker nog: dit kan er voor zorgen dat de omgeving nog langzamer wordt en dat er fouten op gaan treden. Om dit te voorkomen vragen we je om geduld te hebben en te wachten als de omgeving je daarom vraagt!. Als het goed is heb je na het inloggen het scherm voor je zoals afgebeeld in Figuur 1 en heb je nog geen projecten. Het eerste dat je daarom gaat doen is een project uploaden. Dat wil zeggen dat je een project dat iemand anders voor je gemaakt heeft gaat binnenhalen in de ontwikkelomgeving. Om dit te doen klik je op de Projects menuoptie en kiest vervolgens de eerste "Import project" link, zie Figuur 4. Figuur 4: de eerste "Import project" link In ons geval gaan we het "MollenMeppen" project (dat je kunt vinden in de ELO bij deze module) binnenhalen. App Inventor 2 projecten worden opgeslagen als AIA bestanden. Je moet het MollenMeppen.aia bestand uit de ELO halen en op een USB stick, de harde schijf, of je home drive zetten. Daarna klik je op bladeren, zie Figuur 5, en selecteert het MollenMeppen.aia bestand. Als je dan op OK klikt, dan wordt het project binnengehaald. Figuur 5: de "Import Project" pop-up - 5 -

7 Nadat je op OK hebt geklikt wordt het project "MollenMeppen" in ons scherm toegevoegd, zie Figuur 6. Figuur 6: het "My Projects" scherm met het MollenMeppen project erin Korte tijd nadat het project is toegevoegd zal de ontwikkelomgeving automatisch naar het "Designer" scherm springen. In dit scherm zie je het ontwerp van de app, zie Figuur 7. Figuur 7: het "Designer" scherm voor de MollenMeppen app het "Designer" scherm Het "Designer" scherm bestaat uit diverse gebieden. Om straks de gebruikersinterface van je eigen applicatie te kunnen ontwerpen, is het belangrijk dat je deze gebieden en hun functie kent en snapt. De gebieden zie je in Figuur

8 Figuur 8: de diverse gebieden van het "Designer" scherm Figuur 2.5 De verschillende onderdelen van het Design-scherm 1. knoppenbalk: In deze balk vind je knoppen om "Screens" te selecteren, toe te voegen en te verwijderen. Verder kun je via deze balk wisselen tussen het "Designer" scherm en de "Blocks Editor". 2. Palette: Het palette is de plek waar je alle ingebouwde componenten terugvindt om te gebruiken in jouw app. Deze componenten zijn onderverdeeld in categorieën. Om een component te gebruiken sleep je deze naar het scherm in de Viewer. 3. Viewer: In de viewer kun je de gebruikersinterface ontwerpen. 4. Components: Dit is een overzicht van alle componenten die op dit moment in gebruik zijn. Door op een component te klikken kun je zijn eigenschappen bekijken in het Properties gebied. 5. Media: In een applicatie kun je gebruik maken van bijvoorbeeld afbeeldingen, deze kun je hier toevoegen en beheren. 6. Properties: In dit deel van het scherm pas je eigenschappen van een component aan, bijvoorbeeld de kleur. Om weer naar het "Projects" scherm te gaan, klik je op de Projects menuoptie en kiest vervolgens de "My Projects" link, zie Figuur

9 Figuur 9: de "My Projects" link - 8 -

10 4. Mollen Meppen Je hebt zojuist je eerste project geladen en het ontwerp ervan kort gezien. Voor je het een en ander uitgebreid bekijkt ga je de applicatie eerst een keer uitvoeren. Dit doe je door het programma aistarter.exe op te starten. Dit programma kun je vinden in C:\Program Files (x86)\appinventor. Daarna klik je op de Connect menuoptie en kiest vervolgens de "Emulator" link, zie Figuur 10. Figuur 10: de "emulator" link De emulator wordt vervolgens opgestart. Dit duurt even, dus je zult wat geduld moeten hebben. Er komen achtereenvolgens een aantal dialogen voorbij. Deze zie je hierna afgebeeld. Sommige zie je meerdere keren. Het opstarten van de emulator gaat niet helemaal goed. Je krijgt de volgende dialoog te zien en daarin moet je op "Not Now" klikken

11 Het kan zijn dat je ook een fout in de emulator ziet. Deze zie je in de volgende afbeelding. Je moet daar op "Wait" klikken. let op Zorg ervoor dat je aistarter.exe en de emulator maar één keer opstart. Als je één van deze twee meerdere keren opstart, dan leidt dit tot een instabiele situatie en zorgt ervoor dat op den duur de boel kan crashen of dat er helemaal niks gebeurt. Nadat de emulator opgestart en je app geladen is, zie je het volgende. Klik op de mol en kijk wat er gebeurt

12 Wat er op dit moment gebeurt is nog niet zo heel spannend en uitdagend, maar daar kun je wat aan doen! Je kunt de emulator open laten terwijl je programmeert. Om de zoveel tijd wordt je code opnieuw gedownload in de emulator. Soms loopt de emulator echter vast. In dat geval moet je hem afsluiten door op de Connect menuoptie te klikken en vervolgens de "Reset Connection" link te kiezen, zie Figuur 11. Figuur 11: de "Reset Connection" link Hieronder volgt een serie opdrachten waardoor je "MollenMeppen" tot een echt spel kunt maken. We raden je aan om na iedere opgave waarin je de code aanpast deze uit te testen op de emulator. Veel plezier en succes!

13 de "Blocks Editor" De "Blocks Editor" is de omgeving waarin je gaat programmeren. Je komt in de "Blocks Editor" door op de Blocks knop te drukken. Deze zit rechts boven in de knoppenbalk, zie Figuur 12. Met de Designer knop kun je weer terug switchen naar het "Designer" scherm. Figuur 12: locatie van de Blocks knop Voordat je de code gaat aanpassen staan we even stil bij het scherm dat je nu ziet. Net als het "Designer" scherm bestaat ook dit scherm uit verschillende onderdelen. Deze onderdelen zie je in Figuur 13. Figuur 13: de "Block Editor"

14 De knoppenbalk zit op dezelfde plek als in het "Designer" scherm. In deze balk verandert feitelijk niets, behalve dat de Designer en Blocks knoppen een andere kleur krijgen. Links zit het Blocks gedeelte met daaronder het Media gedeelte en rechts zit het grootste gedeelte van het scherm genaamd de Viewer. In het Blocks gedeelte vind je alle bouwblokken om programma's mee te maken. De blokken zijn onderverdeeld in drie groepen: De Built-in blokken. Deze zijn onderverdeeld in diverse categorieën. Elke categorie heeft een eigen kleur. Deze blokken bieden algemene functionaliteit aan. De blokken die bij de app-scherm (Screen) elementen uit je ontwerp horen. Deze blokken bieden functionaliteit specifiek voor je app-scherm elementen aan. De Any component blokken. Deze blokken bieden functionaliteit voor groepen van dezelfde soort blokken aan. Als je op een naam in het Blocks gedeelte klikt, dan zie je een transparante overlay over het Viewer gedeelte, zie Figuur 14. Als je op een blok klikt, dan kun je dat blok naar het Viewer gedeelte slepen. Figuur 14: transparante overlay voor blokken

15 opgave 4.1 Klik eens wat rond in de "Blocks Editor" en kijk wat voor functionaliteit App Inventor 2 allemaal aanbiedt. Sleep ook eens een paar blokken in het Viewer gedeelte en verwijder ze weer. Je kunt blokken verwijderen door ze naar de prullenbak rechts onder te slepen of door ze te selecteren en op de delete knop op het toetsenbord te drukken. Als je goed gekeken hebt in de "Blocks Editor" is het je hopelijk opgevallen dat elk blok een context menu heeft (klik met de rechter muisknop op het blok). Via het context menu kun je commentaar aan blokken toevoegen. Ook kun je ze uitschakelen, inklappen en weer uitklappen, zie Figuur 15 en Figuur 16. Figuur 15: context menu van een uitgeklapt blok Figuur 16: context menu van een ingeklapt blok willekeurig opduiken van de mol De mol beweegt zich erg voorspelbaar op dit moment en dat maakt het spel saai. In de Blocks Editor kun je zien waarom de mol zich zo gedraagt

16 opgave 4.2 Bekijk de code van de procedure verplaatsmol en beredeneer waarom de mol zich verplaatst zoals je ziet wanneer je erop klikt. procedures Als je de code bekeken hebt zoals in de opgave hiervoor gevraagd werd, is je hopelijk opgevallen dat er een zogenaamde procedure is gemaakt met de naam verplaatsmol. Deze procedure wordt aangeroepen vanuit when sprmol.touched. Een procedure (in veel programmeertalen ook wel functie genoemd) is een stuk code met een naam. In ons geval to verplaatsmol. Via de naam kan de bijbehorende code uitgevoerd worden. De naam is als het ware een afkorting voor het stuk code. Procedures zijn handig omdat ze voorkomen dat je hetzelfde stuk code steeds opnieuw moet maken als je die code op meerdere plaatsen nodig hebt. Dit is minder werk en beperkt tevens de lengte van je applicatie. Wanneer je bovendien duidelijke namen gebruikt is je code ook makkelijker te lezen. Dit alles draagt bij aan de overzichtelijkheid en daarmee de onderhoudbaarheid van de code. Wat je hier feitelijk wilt is dat de x en y positie van de mol (de sprite) willekeurig bepaald worden. Hiervoor kun je een blok vinden bij de Built-in blokken in de categorie Math, zie Figuur 17. Nadat je een blok in het Viewer gedeelte hebt gezet, kun je ze aan elkaar klikken als ze passen

17 Figuur 17: locatie van de Math categorie opgave 4.3 Verander de code van de procedure to verplaatsmol zodat de mol zich willekeurig verplaatst binnen het veld. Hint: Wat is het Engelse woord voor willekeurig? geluid toevoegen als je de mol raakt Als de mol geraakt wordt is het leuk als je dat ook hoort. Gelukkig kun je dit programmeren in App Inventor 2. Bij het materiaal zit een bestand whack.mp3 dat je hiervoor kunt gebruiken. Als je dit bestand niet kunt vinden vraag dan aan je leraar waar het staat. Om whack.mp3 in je project te krijgen moet je het geluidsbestand toevoegen aan de media. Dit kun je zowel het "Designer" scherm als de "Blocks Editor" doen. Als je niet kunt vinden waar je moet zijn kijk dan eens terug in deze module naar Figuur 8 of Figuur 13. opgave 4.4 Voeg het geluidsbestand toe aan het spel

18 Als je whack.mp3 hebt toegevoegd, dan moet je in het "Designer" scherm nog een geluid toevoegen. Dit kun je doen via de Media categorie in het palette. Sleep de Sound component naar de Viewer. Je ziet dat deze component niet in het zichtbare gedeelte wordt neergezet. Geluid hoef je namelijk niet te zien. Je ziet ook dat de component in het Components gedeelte verschijnt. Als je daarna teruggaat naar de "Blocks Editor" dan zie je dat bij de Screen blokken Sound1 is toegevoegd. Als je op Sound1 klikt, dan vind je diverse blokken die met het afspelen van geluiden te maken hebben. opgave 4.5 Zorg dat het toegevoegde geluid afgespeeld wordt op het moment dat de speler op de mol klikt. Zorg dat je de naam van de toegevoegde component van Sound1 in SoundGeraakt verandert. Je kunt de naam van een component veranderen door de component te selecteren in het Components gedeelte van het "Designer" scherm en op de Rename knop te drukken. Hint: Zorg dat je het geluidsbestand aan de component koppelt. de mol op een timer laten bewegen Op het moment is het zo dat de mol zich alleen verplaatst als je hem een mep verkoopt. Het is leuker als de mol af en toe uit zichzelf ergens anders opduikt. Om dit voor elkaar te krijgen ga je een zogenaamde "timer" gebruiken

19 Figuur 18: locatie van de Clock component Een timer kun je krijgen via de Clock component in de Sensors categorie in het palette, zie Figuur 18. opgave 4.6 Voeg een Clock component aan het spel toe en kijk goed waar deze neergezet wordt. Beredeneer waarom de Clock component hier neergezet wordt. Zorg dat je de naam van de toegevoegde component van Clock1 in MolClock verandert. Nadat je de Clock component hebt toegevoegd kun je de timer programmeren. Hiervoor moet je weer in de "Blocks Editor" zijn. Bij de Screen blokken is nu Mol- Clock toegevoegd, zie Figuur 19. Klik op MolClock en je ziet bovenaan het when MolClock.Timer blok

20 Figuur 19: locatie van de Clock1 blokken groep opgave 4.7 Voeg een when MolClock.Timer blok toe en zorg dat de mol zich om de zoveel tijd uit zichzelf verplaatst. Hint: Kijk eens bij de Built-in blokken onder de categorie Procedures. Als je niet weet hoe een timer werkt of je komt er niet helemaal uit, klik dan eens op de Help knop en kies de "Tutorials" link. Je kunt dan via de Resources knop de "documentation" link volgen. Helemaal onderaan de pagina vind je dan een link voor "Components Documentation". Als je die aanklikt kun je de documentatie van bijvoorbeeld de sensor componenten vinden. Naast de "Components Documentation" link vind je ook de "Language Blocks Documentation"

21 procedures Als het goed is heb je nu voordeel gehad van de procedure die we al voor je gemaakt hebben. In plaats van de code opnieuw te maken heb je als het goed is nu de procedure aangeroepen. tellen van het aantal maal dat je mis slaat Naast het bijhouden hoe vaak een speler de mol raakt wil je ook graag bijhouden hoe vaak de speler mis slaat. In het Components gedeelte het "Designer" scherm staat een HorizontalArrangementGeraakt die ervoor zorgt dat je componenten horizontaal in je scherm kunt rangschikken. De componenten erin (LabelGeraaktTekst en LabelGeraaktTeller) komen overeen met "aantal geraakt" en "0" in het Viewer gedeelte. opgave 4.8 Voeg een HorizontalArrangement component toe, waarin je de tekst "aantal gemist" en de bijbehorende teller zet. Breid bovendien je programma in de "Blocks Editor" uit zodat het aantal keer dat de speler misslaat wordt bijgehouden. Zorg dat je zinvolle namen gebruikt voor je componenten. score toevoegen Het bijhouden van het aantal keer raak en mis slaan is leuk maar een score is nog leuker. Voor iedere keer dat een speler de mol raakt krijgt hij/zij 2 punten. Voor iedere keer dat de speler de mol mist verliest hij/zij een punt. opgave 4.9 Voeg nog een HorizontalArrangement component toe aan je ontwerp waarin je de score laat zien. Breid bovendien je programma via de "Blocks Editor" uit zodat de score wordt bijgehouden. Zorg weer dat je zinvolle namen gebruikt voor je componenten

22 de mol sneller laten bewegen bij hoge score Naarmate de tijd vordert, en hopelijk de score hoger wordt, blijft de uitdaging van het spel op dit moment gelijk. Het spel vereist dus helaas niet steeds meer van het reactievermogen van de speler maar dat kun je veranderen. Daarvoor moet je onder bepaalde voorwaarden de mol steeds sneller laten bewegen. Om dit voor elkaar te krijgen heb je een if-statement (instructie) nodig. Het blok voor het if-statement is het if-then blok. Het is het eerste blok bij de Built-in blokken in de categorie Control. Met dit blok kun je ook het if-then-else blok maken. Bij een if-then blok wordt er getest of een conditie waar of niet waar is (we noemen zo n conditie ook wel een Booleaanse expressie). Als de conditie waar is wordt de code die binnen het if-statement staat wel uitgevoerd en anders wordt deze code overgeslagen. Bij een if-then-else wordt de code binnen het "else" gedeelte uitgevoerd als de conditie bij de if onwaar is. opgave 4.10 Zorg ervoor dat voor elke 50 punten die de speler heeft de mol 50 milliseconden sneller beweegt. Houd rekening met een grens voor de snelheid. Hint: Als je de Clock1 component selecteert in het Components gedeelte van het "Designer" scherm, dan zie je in het Properties gedeelte een veld dat "TimerInterval" heet. Kun je iets vergelijkbaars vinden in de "Blocks Editor"? conditioneel uitvoeren van code Het conditioneel uitvoeren van code gebeurt bij het programmeren vaak met if of if-else statements. Dit is voorlopig ook de enige manier in App Inventor 2. If-statements zijn belangrijk en essentieel bij het programmeren. Ze zorgen ervoor dat delen van het programma alleen onder bepaalde voorwaarden worden uitgevoerd. We noemen dit "program control" en het geeft gebruikers van onze applicatie de mogelijkheid om de flow van het programma te beïnvloeden

23 testen op je telefoon Tot nu toe heb je de app enkel getest in de emulator. Leuker is natuurlijk om de app ook op je eigen telefoon te draaien, je kunt hem dan ook thuis laten zien! In de knoppenbalk kun je via de Build knop de "App (provide QR code for apk)" link vinden, zie Figuur 20. Als je op de link klikt en even wacht, dan krijg je na verloop van tijd (afhankelijk van de drukte bij de QR code generator kan dit enkele minuten duren) een venster met daarin een QR code, zie Figuur 21. Deze code kun je scannen met de camera van je telefoon. Hiervoor heb je een app nodig om QR codes te scannen. Deze kun je downloaden via de Play Store. Figuur 20: de "App (provide QR code for apk)" link Figuur 21: een QR code behorende bij een App Inventor 2 app Na het openen van de QR code scanner, scan je de QR code met je camera. Richt de camera op de QR code op het scherm. De QR code scanner app leest de barcode en geeft je de optie de URL die hierin verstopt is te openen in de browser. Na het openen van de browser wordt de download van het APK bestand gestart. Na het downloaden open je het APK bestand. Wat er precies gebeurt is afhankelijk van je telefoon en de versie van Android. Waarschijnlijk krijg je eerst de melding dat de installatie is geblokkeerd. Sommige Android telefoons zijn standaard ingesteld dat ze enkel applicaties vanuit de Play Store kunnen installeren. Door "Onbekende bronnen" aan te vinken in het "Beveiliging" onderdeel van "Instellingen" kun

24 je dit toestaan. Nadat je dit hebt gedaan open je het APK bestand opnieuw en kun je het installeren. Na enkele ogenblikken is de applicatie geïnstalleerd en kun je hem runnen. De volgende keer dat je de applicatie via een QR code wilt installeren zal de telefoon vragen of je de applicatie wilt vervangen. Dit bevestig je door op OK te klikken en de applicatie vervolgens opnieuw te installeren. bonus opgaven bonus opgave 4.1 De achtergrond van het spel is op het moment saai wit. Voeg een achtergrond toe aan het spel om de boel wat op te fleuren. Tip: Kijk eens bij de "Properties" van de CanvasVeld component. bonus opgave 4.2 Je kunt op dit moment nog niet afgaan bij het spel. Verander dit door de speler af te laten gaan wanneer zijn/haar score onder de 0 punten zakt. Het afgaan in het spel kun je ook op een heel andere manier aanpakken. Je kunt de speler bij het begin van het spel een aantal levens geven en onder bepaalde omstandigheden laten verliezen. De speler is af wanneer hij/zij geen levens meer over heeft. bonus opgave 4.3 Bouw het concept van levens in je spel. Om levens te verliezen voeg je nog een ander dier toe aan het spel, bijvoorbeeld een schattig konijntje of juist een gruwelijk monster. Laat het andere dier af en toe verschijnen in plaats van de mol en wanneer de speler het andere dier mept verliest hij/zij een leven. Tip: Laat het andere dier vaker verschijnen naarmate de speler een hogere score bereikt

25 5. Schrandere Scholier In het vorige hoofdstuk heb je een leuk spel gemaakt, je kunt echter ook serieuze applicaties schrijven. Waarschijnlijk vraag je jezelf wel eens af welk cijfer je moet halen voor een toets om een 8 gemiddeld te blijven staan voor een vak. In dit hoofdstuk ga je hier een hulpmiddel voor ontwikkelen. Je zult de applicatie stap voor stap opbouwen. Je gaat verder met het gebruiken van het "Designer" scherm en je zult ook weer de "Blocks Editor" moeten gebruiken. In de "Blocks Editor" ga je ervoor zorgen dat de gebruiker cijfers kan invoeren waarmee je vervolgens kunt gaan rekenen. Ook hier raden we je aan om na iedere opgave waarin je het ontwerp of de code aanpast deze uit te testen op de emulator. een nieuw project aanmaken Je begint met het aanmaken van een nieuw project. In Hoofdstuk 4 heb je een project aangemaakt door een bestaand project te uploaden. Dit keer begin je vanaf het begin. Als je nog niet in het "My Projects" scherm bent, ga hier dan nu naar toe door op de My Projects knop te klikken, zie Figuur 22. Figuur 22: locatie van de My Projects knop Klik vervolgens op de knop Start new project. Je krijgt dan de dialoog uit Figuur 23 te zien. Vul in de dialoog de naam van het project in, in dit geval SchrandereScholier. Als je dan op OK klikt, wordt het nieuwe project aangemaakt en schakelt de omgeving na een tijdje naar het "Designer" scherm waarin je nieuwe project te zien is. Op dit moment is er nog weinig te zien, want je project is leeg. Figuur 23: de "Create new project" dialoog

26 gebruikersinterface Na het aanmaken van het project begin je met het ontwerpen van de gebruikersinterface. Voordat je hiermee aan de slag gaat is het verstandig nog een keer naar Figuur 8 te kijken. Klik ook nog eens door de categorieën in het palette van het "Designer" scherm. Nu kun je beginnen met het maken van de gebruikersinterface van je app. Je begint eenvoudig met het toevoegen van enkele label, textbox en knop (button) componenten. Deze componenten vind je in de User Interface categorie van het palette. opgave 5.1 Voeg een Label component toe. Componenten worden automatisch uitgelijnd. Hierdoor komt het label linksboven te staan. Verander de tekst van het label naar "toets 1:". Om onze applicatie overzichtelijk te houden pas je ook de naam van het Label component aan. Hiervoor selecteer je het label in het Components gedeelte en gebruik je de knop Rename om de naam van het label te veranderen naar "lbltoets1". Voeg een textbox toe om te zorgen dat er cijfers ingevoerd kunnen worden door de gebruiker. Verander de naam van de TextBox component naar "tbtoets1". Herhaal het bovenstaande zodat je 3 toetsen in kunt voeren. Je zou nu het volgende moeten zien in het Viewer gedeelte van het "Designer" scherm

27 duidelijke naamgeving Geef componenten, variabelen en procedures altijd een duidelijke naam, dit maakt het programmeren en het lezen van je programma makkelijker. Zodra de gebruiker de cijfers heeft ingevoerd wil je het cijfer kunnen uitrekenen dat de gebruiker moet halen voor de volgende toets om een 8 gemiddeld te blijven staan. De berekening ga je later programmeren, maar je gaat nu al wel een knop en twee labels toevoegen om het resultaat weer te geven. opgave 5.2 Voeg een Button component toe. Verander de tekst van de knop naar "bereken". Verander ook de naam van de Button component naar "btnbereken". Voeg ook een HorizontalArrangement component toe met twee labels erin zodat je in het Viewer gedeelte van het "Designer" scherm het volgende ziet. Noem het eerste label lbltoets4tekst en het tweede label lbltoets4cijfer. Zorg dat je de horizontal arrangement ook een zinvolle naam geeft!

28 Als het goed is heb je de opgaves op de emulator (of je telefoon) getest. Je hebt hopelijk gezien dat je al cijfers kunt invoeren, maar dat er niets gebeurt wanneer je op de knop drukt. Daar ga je nu iets aan doen! rekenen Je gaat nu zorgen dat je app daadwerkelijk kan rekenen. Hiervoor moet je programmeren en dit doe je in de "Blocks Editor" zoals je in het vorige hoofdstuk ook hebt gedaan. Bij de vorige app was er al een stukje voorgeprogrammeerd. Nu is de "Blocks Editor" nog helemaal leeg. Aan de linker kant in het Blocks gedeelte staan weer de Built-in, Screen en Any component groepen. Bij de Screen groep zie je als het goed is bekende namen staan. Dit zijn de namen van de componenten die je in je "Designer" scherm gebruikt hebt, zie Figuur 24. Figuur 24: de blokken uit de Screen groep Voor elke component die je in je "Designer" scherm gezet hebt, vind je de blokken waarmee je het gedrag van die componenten kunt programmeren. Je wilt dat er gerekend gaat worden zodra er op de knop btnbereken geklikt wordt. Hier gebruikt je when btnbereken.click blok voor, dit is het bovenste blok in de lijst. Wanneer er op de knop wordt gedrukt, dan wordt alle code die in het when btnbereken.click blok staat uitgevoerd. Je gaat eerst de gegevens verzamelen waarmee je moet gaan rekenen. Die gegevens zijn de cijfers die de gebruiker invoert. Om die te verzamelen moet je tekst uit ieder textbox lezen. Om dat te doen vind je blokken bij iedere textbox component

29 opgave 5.3 In deze opgave begin je makkelijk door eerst alle cijfers die de gebruiker ingevoerd heeft bij elkaar op te tellen. Om de uitkomst te laten zien moet je het resultaat van het optellen in de "Text" property component lbltoets4cijfer zetten. Je hebt hiervoor het set lbltoets4cijfer.text blok tot je beschikking. Voeg dit blok toe. Vervolgens voeg je vanuit de Math categorie bij de Built-in blokken het + blok toe. Hopelijk is het je opgevallen dat dit blok ook een blauw wieltje heeft zoals het if-then blok. Hiermee kun je het aantal getallen dat je kunt optellen instellen. Zorg dat je met één blok 3 getallen op kunt tellen. Tel vervolgens de waardes van tbtoets1.text, tbtoets2.text en tbtoets3.text bij elkaar op. Als het goed is heb je je app getest. Heb je gekeken wat er gebeurt als je in één textbox niet invult? Nu is het tijd om echt uit te rekenen welk cijfer je moet halen om een 8 gemiddeld te staan. Je mag ervan uitgaan dat alle cijfers evenveel meetellen bij het berekenen van het gemiddelde. Hoe kun je dan eenvoudig het cijfer berekenen dat de gebruiker nodig heeft om een 8 te staan? De som van alle vier cijfers moet samen minimaal 8 * 4 = 32 zijn. Het benodigde cijfer is dus gelijk aan 32 minus de som van de al behaalde cijfers. Stel je hebt al een 9 en twee keer een 7 gehaald. Dat levert in totaal = 23 op. Je moet dan een = 9 halen voor je volgende toets. opgave 5.4 Implementeer de berekening die je zojuist gelezen hebt en zet het antwoord met set lbltoets4cijfer.text in de lbltoets4cijfer component. Alle blokken die je nodig hebt vind je in de Math categorie bij de Built-in blokken

30 Dit werkt al heel aardig, al zijn er nog wel wat tekortkomingen. Als je bijvoorbeeld maar 2 of al 4 cijfers hebt, dan werkt je app niet. Daar ga je nu iets aan doen. het cijfer voor de vijfde toets Je gaat je app nu aanpassen zodat je 4 cijfers in kunt voeren en berekent wat het cijfer voor je vijfde toets moet zijn. opgave 5.5 Zorg ervoor dat de gebruiker 4 cijfers in kan voeren en bereken wat het cijfer voor het vijfde toets moet zijn. BELANGRIJK: Kijk goed en noteer op welke plaatsen je een aanpassing hebt moeten maken. Dit gaat je helpen bij de volgende opgaven. een willekeurig aantal cijfers Als het goed is weet je nu precies welke wijzigingen je moet maken om een nieuwe toets te voegen. Zoals gezegd weet je eigenlijk niet hoeveel cijfers de gebruiker van je app al heeft gehad. Zou je je app zo kunnen maken dat de gebruiker zelf kan bepalen hoeveel cijfers hij/zij gaat invoeren? Uiteraard is dit mogelijk! De makkelijkste oplossing zou zijn om de gebruiker nieuwe velden te laten toe voegen in de gebruikersinterface, maar dat kan helaas niet met App Inventor 2. Om het probleem toch te kunnen oplossen kun je gebruik maken van zogenaamde lijsten. Een lijst is niets anders dan een rijtje bij elkaar horende dingen. Een boodschappenlijst is een goed voorbeeld. Hierop staan onder of achter elkaar alle dingen die je mee moet nemen uit de winkel. Door een lijst te gebruiken, kun je het probleem oplossen. Je gaat dan één textbox gebruiken waarin de gebruiker achtereenvolgens alle cijfers invoert. Door na ieder cijfer op een knop te drukken worden de cijfers aan de lijst toegevoegd. Deze lijst kun laten zien en ook gebruiken om je berekening mee te doen. Dit ga je nu implementeren

31 opgave 5.6 Je gaat beginnen met het aanpassen van de gebruikersinterface. Maak de interface na zoals je ziet in Figuur 25. In dit figuur zie je twee labels waarvan je later de tekst gaat aanpassen vanuit de "Blocks editor". Figuur 25: de nieuwe gebruikersinterface Denk ook nu aan een duidelijke naamgeving van de componenten. Nu is het tijd om te gaan programmeren. Het werken met lijsten kan soms een uitdaging zijn. Probeer dus echt te snappen wat je doet. opgave 5.7 Als je naar de code kijkt die er nog staat van eerder opgaves dan zie je dat er enkele blokken verdwenen zijn. Ook zou je nu een blok moeten hebben dat when btntoevoegen.click heet. Voorheen heette dat blok when btnbereken.click. Je ziet dus dat de omgeving naamsverandering automatisch doorvoert in alle delen van je app. Gooi alle code die in when btntoevoegen.click staat weg, maar laat when btntoevoegen.click zelf staan. Vervolgens ga je een lege lijst maken. De gebruiker heeft immers nog geen cijfers ingevoerd als de app start. De blokken voor lijsten vind je in de Lists categorie bij de Built-in blokken. Het blok dat je nodig hebt is create empty list

32 Hopelijk snap je, dat je het create empty list blok niet zo op zichzelf kunt gebruiken. De linkerkant moet immers ergens in klikken. Dat is ook logisch, want je moet de lege lijst ergens in bewaren. Je hebt dus een variabele nodig. Je weet intussen hoe je variabelen moet maken, dus maak een variabele aan die cijfers heet en stop daar de lege lijst in. Vervolgens moet je een cijfer aan de lijst toevoegen elke keer dat er op de toevoegen knop wordt gedrukt. Dat regel je in het when btntoevoegen.click blok. Probeer dit zelf te doen. Uiteindelijk zou je het volgende in de "Blocks Editor" moeten zien. Als we dit hebben gedaan, dan moeten we de tekst van het label waarin we de cijfers tonen updaten. Hiervoor gebruik je de instructie die je ziet in de volgende afbeelding. Dit is een mooi moment om je app uit te proberen. Schrijf op wat je opvalt bij het uitproberen. Heb je geprobeerd op de knop te drukken als er niks in de textbox staat? Dat zijn dingen die je gebruiker per ongeluk zou kunnen doen. Wat gebeurt er dan met de lijst? Laten we er voorlopig vanuit gaan dat de gebruiker nooit iets fout doet en eerst de app volledig functioneel maken

33 weer rekenen Laten we ons nog even niet bekommeren om de opmaak van onze app. We gaan eerst uitrekenen welk cijfer we voor de volgende toets moeten halen. De vorige methode om het te behalen cijfer uit te rekenen werkt nu natuurlijk niet meer. Je moet daarom een nieuwe methode bedenken. Omdat alle cijfers in een lijst staan, heb je een lus (loop) nodig om alle cijfers te bekijken en te gebruiken. De makkelijkste lus om hier te gebruiken is de for each item in list lus. Deze lus gaat alle items in de opgegeven lijst langs en voert voor elk van deze items een actie uit. In dit geval ga je dit gebruiken om alle cijfers in de lijst bij elkaar op te tellen. Natuurlijk moet je het resultaat van de optelling van alle cijfers ergens opslaan. Als het goed is weet je wat je daarvoor nodig hebt. opgave 5.8 Zorg dat je in het when btntoevoegen.click blok alle cijfers bij elkaar optelt en het resultaat bewaart. Denk eraan dat je voor de lus de juist initialisaties (variabelen een begin waarde geven) moet doen. Je moet ook weten hoeveel cijfers er in de lijst staan om te bepalen hoeveel punten je in totaal moet halen om een 8 gemiddeld te blijven staan. Hiervoor bestaat een handig blok genaamd length of list. Tot slot moet je de som van de ingevulde cijfers nog afhalen van het aantal punten dat je moet behalen en daar het resultaat weer van laten zien. Probeer het bovenstaande eerst zelf voor elkaar te krijgen. Als het niet lukt, kijk dan in Figuur 26 om te zien wat er in de "Blocks Editor" zou moeten staan

34 Figuur 26: resultaat van opgave 5.8 in de "Blocks Editor" globale versus lokale variabelen In de oplossing in Figuur 26 zie je dat er twee verschillende soorten variabelen zijn gebruikt. De variabele cijfers is een zogenaamde globale variabele. Dat wil zeggen dat de naam van de variabele overal in dit scherm van je app bekend is, maar niet in de hele app. Dus in het ene scherm kun je niet bij globale variabelen van een ander scherm. De variabele somvancijfers is een zogenaamde lokale variabele. Deze kun je alleen gebruiken binnen het initialize local blok. Het is belangrijk om zoveel mogelijk met lokale variabelen te werken. Dit maakt je code overzichtelijker en voorkomt fouten als je variabelen met dezelfde naam in hetzelfde scherm wilt gebruiken. handiger en mooier maken Je merkt dat je steeds de emulator moet resetten om opnieuw te testen. Dat ga je eerst fixen, want dat scheelt tijd bij het testen. opgave 5.9 Voeg onderaan een knop toe in je "Designer" scherm. Als de gebruiker op deze knop drukt, dan moet alles zo ingesteld worden alsof de app net opgestart is. Je moet dus onder andere de lijst weer leegmaken, maar je moet nog meer doen

35 Niet alleen de gebruikersinterface kan beter en mooier, maar ook de code zelf. Het is namelijk netter om het berekenen van het te behalen cijfer in een aparte procedure te zetten. opgave 5.10 Zet de code voor het berekenen van het te behalen cijfer in een aparte procedure. De inhoud van de textbox waarin steeds een cijfer ingevoerd wordt, houdt zijn waarde. Dat is onhandig en dat ga je dus repareren. opgave 5.11 Zorg dat de inhoud van de textbox steeds gewist wordt als de gebruiker op de knop toevoegen drukt. Als de gebruiker een fout maakt met invoeren dan werkt onze app niet meer. De gebruiker kan bijvoorbeeld per ongeluk twee keer op de toevoegen knop drukken, een letter in plaats van een cijfer invoeren of een komma gebruiken in plaats van een punt om decimalen te scheiden in het cijfer. Het is netjes om dat af te vangen, oftewel te zorgen dat we fouten van de gebruiker netjes afhandelen. Dat ga je nu doen. opgave 5.12 Zorg dat je fouten van de gebruiker netjes afvangt. Hiervoor is het handig om het is a number? blok te gebruiken dat je helemaal onderaan vindt in de Math categorie bij de Built-in blokken. Zorg ook dat je in de gebruikersinterface iets toevoegt om fouten weer te geven en dat je de code voor de wis alles knop aanpast

36 bonus opgaven Je hebt intussen al redelijk wat uitbreidingen gedaan op deze app en je hebt ook al redelijk wat ervaring met App Inventor 2. Hieronder staan nog een aantal extra opgaven die je kunt doen om meer te oefenen met de ontwikkelomgeving. bonus opgave 5.1 De app ziet er op dit moment best saai uit, zorg ervoor dat de app er aantrekkelijker uit gaat zien. bonus opgave 5.2 Je hebt er al voor gezorgd dat de gebruiker alleen getallen in mag voeren. Toch kan de gebruiker dat nog steeds fout doen. Het laagst mogelijke cijfer is namelijk een 1 en het hoogst mogelijke een 10. Toch kan de gebruiker best -3 of 12 invullen. Zorg ervoor dat dit niet meer kan. bonus opgave 5.3 Een 8 gemiddeld is leuk, maar waarom geen 9? Laat de gebruiker zelf kiezen welk cijfer hij/zij gemiddeld wil staan. bonus opgave 5.4 Niet alle toetsen tellen even zwaar, zorg ervoor dat de gebruiker het gewicht van een toets kan bepalen

37 Nu komen er een tweetal moeilijkere opgaven. Voor deze opgaven heb je een file (een bestand) of een database nodig. Deze vind je in de Storage categorie van het palette in het "Designer" scherm. bonus opgave 5.5 Elke keer als je de app opnieuw opstart ben je je cijfers kwijt. Zou het niet mooi zijn als de cijfers bewaard blijven? Zorg ervoor dat de cijfers worden bewaard bij het opnieuw opstarten van de app. bonus opgave 5.6 Je kunt nu slechts voor één vak cijfers invoeren. Maak de app geschikt voor meerdere vakken

38 6. Meteoor In dit hoofdstuk ga je zelf een eenvoudig spel maken met behulp van de Oriëntatie Sensor van je Android apparaat. Je hebt nu dus een fysiek apparaat nodig, anders kun je de programma's uit dit hoofdstuk niet testen. We helpen je in dit hoofdstuk om het spel stap voor stap op te bouwen. Je zult echter wel merken dat je in dit hoofdstuk minder gedetailleerde aanwijzingen krijgt en dus meer zelfstandig moet doen. Kom je ergens niet uit, blader dan terug naar één van de voorgaande hoofdstukken of ga eens zoeken op internet. Als je er echt niet uitkomt vraag dan hulp aan je leraar. De Oriëntatie Sensor geeft aan of het apparaat gekanteld wordt of niet. Allereerst ga je uitzoeken hoe deze sensor werkt. Je gaat experimenteren door het aansturen van een ImageSprite (zoals de mol in het "Mollen Meppen" spel). In dit spel is de ImageSprite een raket. Je bestuurt de raket door je telefoon naar links of rechts te kantelen. Als je door hebt hoe de Oriëntatie Sensor werkt ga je meteoren over het scherm laten bewegen. Vervolgens ga je detecteren of de raket geraakt wordt door een meteoor om te bepalen wanneer je af bent. de oriëntatie sensor opgave 6.1 Maak een nieuw project in App Inventor 2 en noem het "Meteoor". Nadat je een project hebt aangemaakt ga je zichtbaar maken wat de toestand van de Oriëntatie Sensor is. Daarvoor gebruik je labels in het "Designer" scherm. In het Sensors palette vind je de OrientationSensor component. Net als de Clock component bij "Mollen Meppen" komt de OrientationSensor component ook bij de "Non-visible components" te staan. Tijdens het uitvoeren van het programma is deze sensor namelijk niet zichtbaar

39 opgave 6.2 Sleep drie labels in het scherm. Zoals je intussen weet, moet je componenten meteen een duidelijke naam te geven. Noem je labels achtereenvolgens lblazimuth, lblpitch en lblroll. Sleep ook een OrientationSensor component in het scherm. Deze mag best OrientationSensor1 blijven heten, omdat we toch maar één zo'n sensor nodig hebben. Je "Designer" scherm zou er dan als volgt uit moeten zien. Vervolgens ga je programmeren in de "Blocks Editor". De blokken van de Oriëntatie Sensor zou je intussen zelf moeten kunnen vinden. Het blok dat je gaat gebruiken heet when OrientationSensor1.OrientationChanged. Dit is een event (een gebeurtenis net als de timer die je bij "Mollen Meppen" hebt gebruikt) dat optreedt als je je Android apparaat kantelt. Als dit event optreedt, dan wordt de code die je in het when OrientationSensor1.OrientationChanged blok zet uitgevoerd

40 opgave 6.3 Laat de waarde van de azimuth, pitch en roll van de Oriëntatie Sensor zien door in het when OrientationSensor1.OrientationChanged blok de juiste code te zetten. Het when OrientationSensor1.OrientationChanged blok heeft drie parameters waarmee je de juiste waardes uit kunt lezen. Deze waardes moet je in het juiste label zetten. Als het gelukt is, zet de app dan op je Android apparaat en kijk hoe de Oriëntatie Sensor reageert als je je apparaat beweegt. Hint: Je hebt stiekem al eerder gewerkt met een parameter bij "Mollen Meppen" toen je de touchedsprite van het when Canvas- Veld.Touched blok gebruikte. parameters en argumenten Een parameter is een speciale variabele van een procedure die je gebruikt om informatie door te geven aan die procedure. Parameters staan links bovenaan in het blok onder de naam van het blok. Een procedure kan meer dan één parameter hebben. In Figuur 27 zie je drie parameters, te weten azimuth, pitch en roll. Figuur 27: voorbeeld van een blok met parameters Een argument is een waarde die je meegeeft aan een parameter van een procedure als je die procedure aanroept. Procedures zijn uitgelegd bij "Mollen Meppen"

41 de raket Met wat fantasie kun je de app die je nu hebt al gebruiken als een soort waterpas, maar dat was niet de bedoeling. Je wilt een raket besturen en dat ga je nu doen met behulp van de Oriëntatie Sensor via de roll parameter. In het resources ZIP bestand vind je een aantal plaatjes van een raket. In de Drawing and Animation categorie van het palette in het "Designer" scherm vind je de ImageSprite component. Deze ga je gebruiken om de raket te maken. Een sprite moet in een canvas geplaatst worden om deze zichtbaar te maken en te kunnen besturen. De Canvas component vind je ook in de Drawing and Animation categorie van het palette in het "Designer" scherm. opgave 6.4 Gooi de labels lblazimuth en lblpitch in het "Designer" scherm weg, die heb je niet nodig bij het spel. Upload een plaatje van een raket via Media. Zet een canvas met een sprite daarin in je scherm en koppel het plaatje van de raket aan de sprite. Noem het canvas CanvasVeld en de sprite sprraket. Zorg vervolgens dat het canvas een fatsoenlijke afmeting heeft in je scherm. Je kunt bij de "Width" en "Height" properties van het canvas een waarde in pixels instellen, maar dat is minder handig. Het is handiger om de waarde Fill parent te gebruiken. Bij de hoogte werkt dit alleen als het scherm niet kan scrollen. Dit is een property van de Screen1 component. Zet de sprite ongeveer in het midden neer. Eventueel kun je ook nog een achtergrondkleur voor je canvas kiezen. wiskundig intermezzo Je kunt het spel ook maken zonder de wiskunde achter de werking van de Oriëntatie Sensor precies te snappen. Maar als je geïnteresseerd bent in de wiskunde bekijk deze paragraaf dan goed. Deze paragraaf mag je overslaan als je wilt

42 Laten we zeggen dat als je de telefoon 45 graden naar links helt (roll = -45) de raket links op het scherm (de x-coördinaat is dan 0) moet komen te staan. Bij 45 graden naar rechts (roll = 45) moet de raket helemaal rechts op het scherm komen te staan. Rechts op het scherm wil zeggen dat de x-coördinaat bijna gelijk is aan de breedte van het Canvas. Deze breedte kun je opvragen via het CanvasVeld.Width blok. Je moet daar echter de breedte van de raket nog vanaf halen. Deze breedte kun je opvragen via het sprraket.width blok. Dit hebben we bij "Mollen Meppen" ook gebruikt om te zorgen dat de mol niet buiten het canvas springt. Ofwel, de maximale x-coördinaat voor de raket is gelijk aan: CanvasVeld. Width sprraket. Width De waardes van de minimale en maximale x-coördinaat noemen we raketmin en raketmax. Hierbij is raketmin dus gelijk aan 0. Wat we willen is dat de raket vloeiend van de ene kant naar de andere kant kan bewegen en weer terug. Dit kan door de raket lineair te laten bewegen en daarvoor hebben we een lineaire functie nodig. Bij wiskunde heb je geleerd wat een lineaire functie is. De algemene schrijfwijze van een lineaire functie is: y = ax + b In ons geval nemen we voor x de waarde van de roll en voor y de positie van de raket op het scherm. Om een lineaire functie exact te bepalen heb je twee punten (x, y) nodig en gelukkig hebben we deze punten. Dit zijn namelijk (45, 0) en (-45, raketmax). Je kunt nu de technieken die je bij wiskunde geleerd hebt gebruiken om de exacte lineaire functie te bepalen. Er zijn diverse methodes. We laten er hier één zien. De waardes -45 en 45 voor x liggen even ver van de waarde 0. Aangezien we met een lineaire functie bezig zijn weten we dan dat als we voor de waarde van y het gemiddelde van 0 en raketmax mogen nemen, oftewel raketmax/2. Daaruit mogen we concluderen dat geldt: b = raketmax 2 Dat kunnen we invullen in onze algemene lineaire functie en dan krijgen we: y = ax + raketmax

43 Dit kunnen we omschrijven naar: ax = y raketmax 2 Als onze y waarde gelijk is aan nul dan is onze x waarde gelijk aan 45. Ook dat kunnen we weer invullen en dan krijgen we: En dat kunnen we vereenvoudigen tot: Onze exacte lineaire functie wordt dan: 45a = raketmax 2 a = raketmax 90 y = raketmax x + raketmax 90 2 Dan kunnen we raketmax nog isoleren en krijgen: y = ( x ) raketmax Oftewel de x-coördinaat van de raket is gelijk aan: (roll/ ) x raketmax. besturing Alle voorbereidingen zijn klaar. Nu ga je bepalen wat er moet gebeuren als je mobiel wordt gekanteld; dus als het when OrientationSensor1.OrientationChanged event optreedt. Hiervoor ga je de waarde van de roll parameter gebruiken. Door je mobiel te kantelen ga je de x-coördinaat van de raket beïnvloeden via de volgende formule: x = ( roll ) raketmax Hierbij geld voor raketmax de volgende formule: raketmax = CanvasVeld. Width sprraket. Width

44 Deze formule hebben we in de vorige paragraaf afgeleid. opgave 6.5 Voeg in het when OrientationSensor1.OrientationChanged blok de code toe om de raket te laten bewegen. Hiervoor moet je de uitkomst van de hiervoor gegeven functies in de "x" property van sprraket zetten. Hint: Schrijf de formule op papier en zet haakjes zodat je goed ziet hoe je de berekening op moet bouwen. Het eerste blok dat je moet plaatsen is het x blok obstakels Je hebt nu een raket gemaakt die je kunt besturen, je komt echter nog geen obstakels tegen op jouw weg door het heelal. Daar ga je nu verandering in brengen. Het is dan echter handiger als je raket onder in het canvas staat zodat je meer tijd hebt om te reageren. Om obstakels te maken gaan we een standaard component van App Inventor 2 gebruiken en wel de Ball component. Deze vind je in de Drawing and Animation categorie van het palette in het "Designer" scherm. De Ball component lijkt wat mogelijkheden betreft veel op een ImageSprite component. Je kunt het plaatje echter niet zelf uitkiezen. tip Als je precies wilt weten wat het verschil is tussen een ImageSprite en een Ball component, dan kun je in het palette achter de component naam op het vraagteken klikken. Voor blokken in de "Blocks Editor" kun je help tekst krijgen als je met je muiswijzer op het blok blijft staan

45 opgave 6.6 Zet een Ball component ergens bovenaan in het canvas. Geef deze component de naam bllmeteoor. Zet vervolgens de "Speed" property van bllmeteoor op 25 en kijk wat er gebeurt. De Ball component heeft naast de "Speed" property nog twee interessante properties, namelijk "Interval" en "Heading". De "Interval" property staat waarschijnlijk op 100. Dat betekent dat elke 100 milliseconde (dus elke tiende seconde) bllmeteoor met de "Speed" wordt verplaatst. Als de beweging schokkerig overkomt kun je de waarde van de "Interval" property kleiner maken. Als het spel traag wordt dan kun je dit soms verhelpen door de "Interval" property van een de Ball componenten groter te maken. opgave 6.7 Zet vervolgens de "Interval" property van bllmeteoor op 2000 en kijk wat er gebeurt. De beweging is nu schokkerig en traag. Welke kant beweegt de meteoor op? Met behulp van de "Heading" property kun je aangeven welke kant de bal in moet bewegen. De "Heading" property is de hoek in graden. Zoek met behulp van de help uit wat je bij de "Heading" property in moet vullen om de bal naar beneden te laten bewegen in de richting van de raket. opgave 6.8 Zet de "Heading" property van bllmeteoor op de juiste waarde. Maak de meteoor ook wat groter en zet de "Interval" property terug op 100. meerdere meteoren Als de meteoor beneden is aangekomen blijft hij liggen. Je wilt eigenlijk dat de meteoor dan weer van boven het scherm binnenkomt. Misschien zelfs wel met een andere grootte of in een andere kleur. Ook hier heeft App Inventor 2 blokken voor. Het blok heet when bllmeteoor.edgereached. Dit event treedt op als de bal de on

46 derkant van het scherm raakt. Je vindt het when bllmeteoor.edgereached bij de blokken van de bllmeteoor component. Als de meteoor beneden tegen de rand aan vliegt wil je dat de y-coördinaat weer 0 wordt, zodat de bal weer bovenaan begint. Het when bllmeteoor.edgereached blok heeft een parameter die edge heet. Hiermee kun je kijken tegen welke kant de meteoor gevlogen is. Aangezien de meteoor omlaag vliegt hoef je hier niet naar te kijken, je weet immers al dat hij tegen de onderkant botst. opgave 6.9 Implementeer when bllmeteoor.edgereached zodanig dat de bal weer bovenaan het scherm begint nadat deze de onderkant heeft geraakt. Het ziet er al bijna uit als een spel. Eén van de problemen is dat de meteoor steeds op dezelfde plek naar beneden komt. Dit kun je verhelpen door de x-coördinaat van de meteoor op een willekeurige waarde te zetten met het random integer blok. opgave 6.10 Implementeer when bllmeteoor.edgereached zodanig dat de bal bovenaan het scherm op een willekeurige x-coördinaat begint. Let op: Zorg dat de meteoor niet buiten het scherm wordt gezet. Hint: De Ball component heeft geen width maar een radius. botsing Nog een probleem is dat de meteoor niet met de raket botst. Dit kun je oplossen via het when bllmeteoor.collidedwith blok. Dit event treedt op als de meteoor tegen een ander object botst. In de parameter other kun je zien met welk object de meteoor is gebotst. Aangezien je al weet dat het de raket is hoef je dit niet te controleren. Zodra het event optreedt weet je dat de meteoor op de raket gebotst is

47 opgave 6.11 Implementeer when bllmeteoor.collidedwith zodanig dat de bal op een willekeurige x-coördinaat bovenaan het scherm begint nadat deze op de raket gebotst is. levens bijhouden Als de raket geraakt wordt door een meteoor moet er iets meer gebeuren dan alleen de meteoor opnieuw bovenin het scherm laten beginnen. Daarom ga je nu levens in het spel inbouwen. opgave 6.12 Zorg dat boven het canvas, naast het label waarin je de roll waarde van je Android apparaat laat zien, drie harten komen te staan die levens voorstellen. Je vindt een plaatje van een hart in de resources bij deze module. Gebruik een horizontal arrangement om alles netjes naast elkaar te zetten. Zorg vervolgens dat er een leven verdwijnt als de raket door een meteoor geraakt wordt. Als het laatste leven verdwijnt moet het spel stoppen. Hint: Gebruik drie Image componenten. Deze kun je zichtbaar en onzichtbaar maken. bonus opgaven Hieronder staan nog een aantal extra opgaven die je kunt doen om het spel leuker te maken. bonus opgave 5.1 Hoewel in de ruimte geen geluid te horen is, wordt het spel wel leuker als je het geluid van een botsing toevoegt als de raket tegen een meteoor botst. Pas de code aan zodat het ook een geluid laat horen

48 bonus opgave 5.2 Zorg dat als de meteoor opnieuw bovenin begint je de grootte van de meteoor op een willekeurige waarde tussen de 10 en 20 zet. bonus opgave 5.3 Zorg dat als de meteoor opnieuw bovenin begint je de snelheid van de meteoor op een willekeurige waarde tussen de 20 en 40 zet. bonus opgave 5.4 Zorg dat als de meteoor opnieuw bovenin begint je de kleur van de meteoor op een willekeurige kleur zet. bonus opgave 5.5 Zorg dat de speler ook levens kan verdienen door het spel te spelen. bonus opgave 5.6 Zorg dat het spel moeilijker wordt naarmate de speler het spel langer speelt

49 7. Appendix A: projecten samenvoegen Vooraf: Zorg dat je van tevoren bepaalt wat je hoofdproject wordt. Laten we zeggen dat we werken met projecten MyProject1 en MyProject2. We nemen MyProject1 als hoofdproject. In MyProject1 zorg je, dat je je hoofdscherm hebt. Het is prima als het hoofdscherm de naam Screen1 heeft. MyProject1 is waar je straks de schermen en assets uit MyProject2 naar toe kopieert. Zorg dat je in MyProject2 het scherm Screen1 leeg laat of gebruikt om te testen, maar let daar niet op de opmaak, dat is zonde van de tijd. Zorg dat je van tevoren afspraken maakt over de namen van schermen (anders dan de hoofdschermen Screen1), je wilt geen dubbele namen in MyProject1 en MyProject2. Projecten samenvoegen is niet moeilijk, maar wel enigszins bewerkelijk. Allereerst moet je de projecten exporteren. Dat doe je als volgt. Ga naar het "My Projects" scherm, daar zie je een overzicht van je projecten. Selecteer het eerste project dat je gaat exporteren, laten we zeggen dat dit project MyProject1 is, aangezien dit het hoofdproject is. Kies "Export selected project (.aia) to my computer" onder de Projects menuoptie, zie volgende afbeelding. Als het goed is heb je nu een bestand genaamd MyProject1.aia. Exporteer ook het tweede project waarin je gewerkt hebt, dus MyProject2. Als het goed is heb je nu ook een bestand genaamd MyProject2.aia

Android apps met App Inventor 2 antwoorden

Android apps met App Inventor 2 antwoorden 2014 Android apps met App Inventor 2 antwoorden F. Vonk versie 1 11-11-2014 inhoudsopgave Mollen Meppen... - 2 - Schrandere Scholier... - 15 - Meteoor... - 21 - Dit werk is gelicenseerd onder een Creative

Nadere informatie

Android apps met App Inventor 2

Android apps met App Inventor 2 2016 Android apps met App Inventor 2 F. Vonk, C. Crombach, R. Eggenkamp versie 2 15-11-2016 inhoudsopgave 1. inleiding... - 2-2. installatie... - 3-3. ontwikkelomgeving... - 5-4. Mollen Meppen... - 9-5.

Nadere informatie

Android Apps met App Inventor

Android Apps met App Inventor Android Apps met App Inventor Coen Crombach Robin Eggenkamp François Vonk 1 november 2012 ii cbea Dit werk is gelicenseerd onder een Creative Commons Naamsvermelding-NietCommercieel-GelijkDelen 3.0 Unported.

Nadere informatie

Programmeerstructuren met App Inventor

Programmeerstructuren met App Inventor Programmeerstructuren met App Inventor Kevin Krul, Universiteit Utrecht Roncalli, Bergen op Zoom Inhoud: Les 1: Introductie tot App Inventor, when statement en variabelen. Les 2: Introductie if-statement

Nadere informatie

van PSD naar JavaScript

van PSD naar JavaScript 2015 van PSD naar JavaScript F. Vonk versie 2 19-9-2015 inhoudsopgave 1. inleiding... - 2-2. ontwikkelomgeving... - 3-3. programmeerconcepten... - 4 - statement... - 4 - sequentie... - 4 - variabele en

Nadere informatie

Werken met App Inventor. {1} Hallo wereld!

Werken met App Inventor. {1} Hallo wereld! Werken met App Inventor {1} Hallo wereld! 1 Wat is App Inventor? App Inventor is een programma waarmee Android apps kunnen worden gemaakt. Het is ontwikkeld door M.I.T. (Massachusetts Institute of Technology).

Nadere informatie

APP INVENTOR BEGINNER

APP INVENTOR BEGINNER Inhoudsopgave 5 6 Over deze serie Configuratie Een vraag maken Antwoorden nakijken Meerdere vragen Afronden.....5.6 Over deze serie Deze kaarten laten je kennis maken met App Inventor. Je krijgt de kans

Nadere informatie

APP INVENTOR ERVAREN

APP INVENTOR ERVAREN Inhoudsopgave Configuratie Een Beginscherm! Een Minigame maken Een Minigame met lijsten Procedures Controleer Alles! De Score tonen Afsluiten........ Configuratie Wat we behandelen: Hoe we een bestand

Nadere informatie

Zo gaat jouw kunstwerk er straks uitzien. Of misschien wel heel anders.

Zo gaat jouw kunstwerk er straks uitzien. Of misschien wel heel anders. Spirograaf in Python Een kunstwerk maken Met programmeren kun je alles maken! Ook een kunstwerk! In deze les maken we zelf een kunstwerk met Python. Hiervoor zal je werken met herhalingen en variabelen.

Nadere informatie

MS Word opzet verslag

MS Word opzet verslag 2014 MS Word opzet verslag F. Vonk versie 1 7-5-2014 inhoudsopgave terminologie... - 3 -... - 5 - stap 1: voorblad toevoegen... - 5 - stap 2: paginanummers op de bladzijdes zetten... - 6 - stap 3: lege

Nadere informatie

Maak je eigen app met Thunkable!

Maak je eigen app met Thunkable! Maak je eigen app met Thunkable! We gebruiken hiervoor de webapplicatie https://thunkable.com/. Elk kind moet nu een account aanmaken via e-mail of zijn/haar Google-account. FASE 1 DE APP BEDENKEN (max

Nadere informatie

Let s play baseball! Let s get ready! Voorkennis: Sprites, Lopen, Variabelen, Scores, xy. Leerdoelen: 3D illusie, Klonen

Let s play baseball! Let s get ready! Voorkennis: Sprites, Lopen, Variabelen, Scores, xy. Leerdoelen: 3D illusie, Klonen Let s play baseball! Voorkennis: Sprites, Lopen, Variabelen, Scores, xy Leerdoelen: 3D illusie, Klonen Let s get ready! Jullie weten ongetwijfeld wat het belangrijkste is van het succes van elk goed spel

Nadere informatie

Scratch voor mobiel: AppInventor

Scratch voor mobiel: AppInventor Scratch voor mobiel: AppInventor Beginnen AppInventor is Scratch voor Android. Je maakt hiermee apps voor op je mobiele telefoon of tablet. Beginnen: Start chrome.exe en ga naar http://appinventor.mit.edu/explore

Nadere informatie

Hoe moet je een prachtige presentatie maken?

Hoe moet je een prachtige presentatie maken? Hoe moet je een prachtige presentatie maken? www.meestermichael.nl Geef de presentatie een titel. Klik dit vak aan om jouw presentatie een ondertitel te geven. Hier kun je je presentatie een titel geven

Nadere informatie

Belevingsdagen Leraar Informatica (BASO) Maak je eigen app! Belevingsdagen Thomas More - Elke Boonen

Belevingsdagen Leraar Informatica (BASO) Maak je eigen app! Belevingsdagen Thomas More - Elke Boonen Belevingsdagen Leraar Informatica (BASO) Maak je eigen app! App Inventor: je app maken http://appinventor.mit.edu/ Rechtsboven Create Apps Aanmelden met Google Account App Inventor: nieuw project Start

Nadere informatie

intro informatica F. Vonk versie

intro informatica F. Vonk versie 2017 intro informatica F. Vonk versie 2 7-8-2017 inhoudsopgave 1. inleiding... - 4-2. ELO... - 4-3. opzet... - 5-4. plagiaat en eigen inbreng... - 5-5. leerlijnen... - 6-6. soorten opdrachten en beoordeling...

Nadere informatie

4.1 4.2 5.1 5.2 6.1 6.2 6.3 6.4

4.1 4.2 5.1 5.2 6.1 6.2 6.3 6.4 Handleiding CMS Inhoud 1 Inloggen 2 Algemeen 3 Hoofdmenu 4 Pagina s 4.1 Pagina s algemeen 4.2 Pagina aanpassen 5 Items 5.1 Items algemeen 5.2 Item aanpassen 6 Editor 6.1 Editor algemeen 6.2 Afbeeldingen

Nadere informatie

Handleiding Micro:Bit De leerkracht als coach! In samenwerking met:

Handleiding Micro:Bit De leerkracht als coach! In samenwerking met: Handleiding Micro:Bit De leerkracht als coach! In samenwerking met: Connect je Micro:bit! Installeren Allereerst download de Micro:bit app op je mobiele apparaat. De app is te herkennen aan het Micro:bit

Nadere informatie

HANDLEIDING DOIT BEHEER SYSTEEM

HANDLEIDING DOIT BEHEER SYSTEEM HANDLEIDING DOIT BEHEER SYSTEEM ALGEMENE INFORMATIE Het Doit beheer systeem is een modulair opgebouwd systeem waarin modules makkelijk kunnen worden toegevoegd of aangepast, niet iedere gebruiker zal dezelfde

Nadere informatie

Handleiding ZKM Online. Versie 2.1

Handleiding ZKM Online. Versie 2.1 Handleiding ZKM Online Versie 2.1 Februari 2015 Inhoudsopgave 1. Inloggen... 3 1.1 Eerste keer dat je inlogt... 3 1.1.1 Profiel... 4 1.1.2. Wachtwoord (wijzigen)... 4 1.1.3. Bureau... 5 1.1.4. Consultants

Nadere informatie

Handleiding voor Leden Teampagina aanpassen op www.witkampers.nl

Handleiding voor Leden Teampagina aanpassen op www.witkampers.nl Handleiding voor Leden Teampagina aanpassen op www.witkampers.nl 1 Inleiding & Inhoudsopgave Deze handleiding helpt bij het aanpassen van de teampagina s op www.witkampers.nl. Het doel van de website is

Nadere informatie

Handleiding CMS VOORKANT

Handleiding CMS VOORKANT Handleiding CMS VOORKANT Inhoudsopgave Pagina 1. Toegang tot het CMS... 3 2. Artikel toevoegen... 4 3. Artikel bewerken... 5 4. Artikel kopiëren of verwijderen... 6 5. Afbeelding, link of tabel invoegen...

Nadere informatie

VITAMINE. VITale AMsterdamse ouderen IN de stad. Tablet Handleiding

VITAMINE. VITale AMsterdamse ouderen IN de stad. Tablet Handleiding VITAMINE VITale AMsterdamse ouderen IN de stad Tablet Handleiding Onderdelen Gebruik tablet... 2 Welke functies gebruikt u op de tablet?... 2 MBvO oefeningen... 3 Tabbladen... 3 Vandaag... 4 Uitvoeren...

Nadere informatie

GEBRUIKERSHANDLEIDING MAAKJETRAINING.NL 1

GEBRUIKERSHANDLEIDING MAAKJETRAINING.NL 1 GEBRUIKERSHANDLEIDING MAAKJETRAINING.NL 1 INHOUD 1 Inleiding 3 1.1 De drie categorieën 3 2 Inloggen op MaakJeTraining 4 2.1 Registreren op MaakJeTraining 4 2.2 Inloggen met account 5 2.3 Veranderingen

Nadere informatie

Handleiding Wordpress CMS 4-5-2015

Handleiding Wordpress CMS 4-5-2015 Handleiding Wordpress CMS 4-5-2015 Inhoud 1. Het dashboard.... 3 2. Een pagina of bericht aanpassen.... 5 3. Een nieuw bericht toevoegen... 6 4. Een pagina maken... 7 5. Website met sitebuilder... 8 6.

Nadere informatie

Scratch les 3: Quiz! Je eigen spelshow

Scratch les 3: Quiz! Je eigen spelshow Scratch les 3: Quiz! Je eigen spelshow Hoeveel weten jouw vriendjes en vriendinnetjes over jouw favoriete onderwerp? Test het met je zelfgemaakte quiz! Ga naar https://scratch.mit.edu/projects/112774047/.

Nadere informatie

Met deze module heeft u de mogelijkheid om gemakkelijk, snel en efficiënt uw documenten als naslag in Unit 4 Multivers te koppelen.

Met deze module heeft u de mogelijkheid om gemakkelijk, snel en efficiënt uw documenten als naslag in Unit 4 Multivers te koppelen. Handleiding Scan+ Introductie Met Scan+ gaat een lang gekoesterde wens voor vele gebruikers van Unit 4 Multivers in vervulling: eenvoudig koppelen van documenten in relatiebeheer of documentmanagement

Nadere informatie

Handleiding Cubigo Verenigingen en Organisaties

Handleiding Cubigo Verenigingen en Organisaties Handleiding Verenigingen en Organisaties Wij heten u hartelijk welkom bij, het platform waar de verbinding wordt gelegd tussen burgers, instellingen, bedrijven en verenigingen op een eenvoudige en gebruikersvriendelijke

Nadere informatie

Mei. Handleiding - Publisher Tool 1

Mei. Handleiding - Publisher Tool 1 Mei 15 Handleiding - Publisher Tool 1 Inhoudsopgave 1. Welkom... 3 1.1 Inloggen... 3 1.2 Dashboard... 4 2. Boeken... 5 2.1 Boeken aanmaken... 5 2.2 Het bewerken van boekinformatie.... 7 3. Verrijkingen...

Nadere informatie

Variabelen en statements in ActionScript

Variabelen en statements in ActionScript Ontwikkelen van Apps voor ios en Android Variabelen en statements in ActionScript 6.1 Inleiding Als we het in de informatica over variabelen hebben, bedoelen we een stukje in het geheugen van de computer

Nadere informatie

Symbol for Windows Planner Versie 0.8

Symbol for Windows Planner Versie 0.8 Symbol for Windows Planner Versie 0.8 Inhoud Inleiding... 3 1. Weergaven... 4 2. RealTime modus (de agenda raadplegen)... 6 2.1. Wat is een modus... 6 2.2. Eenvoudigste weergave... 6 2.3. Uitgebreidere

Nadere informatie

Landelijk Indicatie Protocol (LIP)

Landelijk Indicatie Protocol (LIP) Handleiding Landelijk Indicatie Protocol programma pagina 1 of 18 Landelijk Indicatie Protocol (LIP) Welkom bij LIP Lip is ontstaan uit een toegevoegde module aan het kraamzorg administratie pakket van

Nadere informatie

DEEL: THEMA. Klik op Thema. Nu verschijnen er een aantal thema s. Dubbelklik op een thema en je krijgt het volgende schermpje:

DEEL: THEMA. Klik op Thema. Nu verschijnen er een aantal thema s. Dubbelklik op een thema en je krijgt het volgende schermpje: DEEL: THEMA In het Notebook kun je zelf snel de bladzijde een leuk uiterlijk geven d.m.v. een thema. Deze thema s vind je op de volgende manier: Klik op Gallery Klik op Thema Nu verschijnen er een aantal

Nadere informatie

Handleiding bij de Booktest Generator

Handleiding bij de Booktest Generator Handleiding bij de Booktest Generator Het programma voor het maken van toetsen bij boeken. (c) 2005/2009 Visiria Uitgeversmaatschappij Twisk Inleiding Onze dank voor het aanvragen van de Booktest Generator.

Nadere informatie

Doe het zelf installatiehandleiding

Doe het zelf installatiehandleiding Doe het zelf installatiehandleiding Inleiding Deze handleiding helpt u bij het installeren van KSYOS TeleDermatologie. De installatie duurt maximaal 30 minuten, als u alle onderdelen van het systeem gereed

Nadere informatie

Handleiding 2designers Content Management Systeem

Handleiding 2designers Content Management Systeem Handleiding 2designers Content Management Systeem pagina 1 van 7 Inloggen: Om de welkom-kind website te kunnen beheren, moet u eerst inloggen. Dit kan via de URL: http://www.welkom-kind.nl/nieuw/admin

Nadere informatie

Handleiding De Biedwedstrijd

Handleiding De Biedwedstrijd Handleiding De Biedwedstrijd Auteur: Marcel Hofstede Versie: 2.1 Handleiding Biedwedstrijd (V2.1) Blz. 1 van 11 INHOUDSOPGAVE Programma Biedwedstrijd...3 1. Installatie en opstarten van het programma...3

Nadere informatie

Handleiding Joomla CMS

Handleiding Joomla CMS Handleiding Joomla CMS Inhoudsopgave Inloggen bij de beheeromgeving 3 Artikelen 4 Prullenbak bekijken 4 Nieuw artikel maken / bewerken 5 Afbeelding toevoegen aan artikel 6 Link in een artikel plaatsen

Nadere informatie

Handleiding. NDFF-invoer. voor alle NDFF-portalen en Telmee

Handleiding. NDFF-invoer. voor alle NDFF-portalen en Telmee Handleiding NDFF-invoer voor alle NDFF-portalen en Telmee Auteur: Serviceteam NDFF Versie oktober 2017 Inhoudsopgave 1. Inleiding... 2 2. Vereisten voor het gebruik... 2 3. Installatie... 2 4. Voor u gaat

Nadere informatie

App Inventor en de Micro:bit

App Inventor en de Micro:bit App Inventor en de Micro:bit Met de standaard instellingen van App Inventor kun je al fantastische programma s (eigenlijk apps) maken. Wil je iets maken wat met de standaard omgeving niet lukt, dan kun

Nadere informatie

Bestanden bewaren met SkyDrive

Bestanden bewaren met SkyDrive Bestanden bewaren met SkyDrive Wat is SkyDrive? Met SkyDrive (www.skydrive.live.com) kun je bestanden opslaan op een beveiligde, gratis website. De bestanden kun je overal ter wereld weer downloaden. De

Nadere informatie

Handleiding NarrowCasting

Handleiding NarrowCasting Handleiding NarrowCasting http://portal.vebe-narrowcasting.nl september 2013 1 Inhoud Inloggen 3 Dia overzicht 4 Nieuwe dia toevoegen 5 Dia bewerken 9 Dia exporteren naar toonbankkaart 11 Presentatie exporteren

Nadere informatie

Inhoud van de website invoeren met de ContentPublisher

Inhoud van de website invoeren met de ContentPublisher Inhoud van de website invoeren met de ContentPublisher De inhoud van Muismedia websites wordt ingevoerd en gewijzigd met behulp van een zogenaamd Content Management Systeem (CMS): de ContentPublisher.

Nadere informatie

Achtergrond en lettertype Opmaak Achtergrond Opmaak Achtergrond Afbeelding in achtergrond

Achtergrond en lettertype Opmaak Achtergrond Opmaak Achtergrond Afbeelding in achtergrond Frontpage Express is het meest eenvoudige programma voor het maken van je homepage. Is het programma niet geïnstalleerd op je PC, dan is het te downloaden en daarna te installeren. We zullen nu een aantal

Nadere informatie

Handleiding website. Inloggen Start uw internet browser en ga naar http://www.rbaoreven.nl/. Laatst bijgewerkt: 17 mei 2008

Handleiding website. Inloggen Start uw internet browser en ga naar http://www.rbaoreven.nl/. Laatst bijgewerkt: 17 mei 2008 Handleiding website Laatst bijgewerkt: 17 mei 2008 In deze handleiding staat alles wat u nodig heeft om een bericht op de website van de Reddingsbrigade Aoreven Heythuysen te plaatsen. Alles wordt in woord

Nadere informatie

Inhoud. Handleiding Dododent. Beste tandarts of praktijkmanager,

Inhoud. Handleiding Dododent. Beste tandarts of praktijkmanager, Handleiding Dododent Beste tandarts of praktijkmanager, Hartelijk dank voor de aanschaf van een website bij Dodoworks. Hieronder volgt een uitgebreide handleiding van het Dododent systeem waarmee de website

Nadere informatie

Informatie gebruik Digi Bord

Informatie gebruik Digi Bord Informatie gebruik Digi Bord Aan de slag Schakel de pc en de beamer aan en het bord is te gebruiken. Het bord hoeft u niet apart aan te zetten. De pen is nu alleen te gebruiken als muis. Beamer De beamer

Nadere informatie

Handleiding Auxil Zebra LabelWriter Koppeling App

Handleiding Auxil Zebra LabelWriter Koppeling App Handleiding Auxil Zebra LabelWriter Koppeling App Versie Opmerkingen Datum 1.0 Eerste concept af van de handleiding 27-02-2017 1.1 Zebra Designer download link geupdate 03-03-2017 Handleiding Auxil ZEBRA

Nadere informatie

Meer Blokken. 1. Dit is een functie genaamd Maximum, die twee argumenten heeft: number1 en number2.

Meer Blokken. 1. Dit is een functie genaamd Maximum, die twee argumenten heeft: number1 en number2. Meer Blokken Voorkennis: SuperDojo, Snake Leerdoelen: Meer Blokken Introductie Meer Blokken zijn Scratch s manier van functies. Functies zijn een heel belangrijk concept in alle programmeertalen. Het staat

Nadere informatie

Scratch. Gemaakt door: Déjan van Noordt en Leroy van den Driesche Leerlingen HAVO 5 SG Spieringshoek Als onderdeel voor het vak Informatica

Scratch. Gemaakt door: Déjan van Noordt en Leroy van den Driesche Leerlingen HAVO 5 SG Spieringshoek Als onderdeel voor het vak Informatica Scratch sdas Gemaakt door: Déjan van Noordt en Leroy van den Driesche Leerlingen HAVO 5 SG Spieringshoek Als onderdeel voor het vak Informatica Inhoud Wat is scratch?... 2 Deel 1: Account aanmaken... 2

Nadere informatie

CrashPlan PROe installatie handleiding. Versie 2.2-17-04-2016. Mac-Up! - CrashPlan PROe Installatie Handleiding - 1

CrashPlan PROe installatie handleiding. Versie 2.2-17-04-2016. Mac-Up! - CrashPlan PROe Installatie Handleiding - 1 CrashPlan PROe installatie handleiding Versie 2.2-17-04-2016 Mac-Up! - CrashPlan PROe Installatie Handleiding - 1 1 - Ga naar de gedownloade CrashPlanPROe_Mac-Up!.zip (staat standaard in jouw Downloads

Nadere informatie

Producten toevoegen. Inleiding

Producten toevoegen. Inleiding Producten toevoegen Inleiding...1 Stap 1: Instellingen controleren...2 Stap 2: Menu's aanmaken...3 Stap 3: Producten toevoegen...4 Producten overzicht...5 Product verwijderen...5 Menu/submenu verwijderen...5

Nadere informatie

LES 4: Scrollen achtergrond en tegels gebruiken

LES 4: Scrollen achtergrond en tegels gebruiken LES 4: Scrollen achtergrond en tegels gebruiken DOEL: De achtergrond (background) laten bewegen en we gaan tegels (tiles) gebruiken om het speelveld uit te breiden. Start Stencyl Open het zelf gemaakte

Nadere informatie

Werken op afstand via internet

Werken op afstand via internet HOOFDSTUK 12 Werken op afstand via internet In dit hoofdstuk wordt uitgelegd wat er nodig is om op afstand met de ROS artikel database te kunnen werken. Alle benodigde programma s kunnen worden gedownload

Nadere informatie

Beknopte handleiding Overhoor 4.0.3 NL (Efka-soft)

Beknopte handleiding Overhoor 4.0.3 NL (Efka-soft) Beknopte handleiding Overhoor 4.0.3 NL (Efka-soft) 1. Programma algemeen 1.1 Downloaden en installeren 1.2 Opstarten 1.3 Afsluiten 1.4 Verwijderen 2. Overhoorbestanden gebruiken 2.1 Nieuw bestand maken

Nadere informatie

Snel aan de slag met BasisOnline en InstapInternet

Snel aan de slag met BasisOnline en InstapInternet Snel aan de slag met BasisOnline en InstapInternet Inloggen Surf naar www.instapinternet.nl of www.basisonline.nl. Vervolgens klikt u op de button Login links bovenin en vervolgens op Member Login. (Figuur

Nadere informatie

INSTALLATIE IN PRINT INSTALLEREN. Aan de slag met Communicate In Print

INSTALLATIE IN PRINT INSTALLEREN. Aan de slag met Communicate In Print AAN DE SLAG INSTALLATIE In deze handleiding worden de stappen besproken die doorlopen worden bij het installeren van de volledige versie Communicate In Print LET OP! WANNEER U EERDER EEN VERSIE VAN IN

Nadere informatie

1. Over LEVIY 5. Openen van de activiteit 2. Algemene definities 6. Inloggen op het LEVIY dashboard 3. Inloggen 6.1 Overzichtspagina 3.

1. Over LEVIY 5. Openen van de activiteit 2. Algemene definities 6. Inloggen op het LEVIY dashboard 3. Inloggen 6.1 Overzichtspagina 3. Versie 1.0 05.03.2015 02 1. Over LEVIY Wat doet LEVIY? 08 5. Openen van de activiteit Hoe wordt de activiteit geopend? 2. Algemene definities Behandelen van terugkerende definities. 09 6. Inloggen op het

Nadere informatie

HTML en CSS. Je website bestaat uit HTML. Dat is een taal die browsers (Internet explorer, Chrome, Safari) kunnen lezen.

HTML en CSS. Je website bestaat uit HTML. Dat is een taal die browsers (Internet explorer, Chrome, Safari) kunnen lezen. Terminologie HTML en CSS HTML: Hyper Markup language Je website bestaat uit HTML. Dat is een taal die browsers (Internet explorer, Chrome, Safari) kunnen lezen. CSS: Cascading StyleSheet stylesheet for

Nadere informatie

Stappenplan Website de Palster. Deze uitleg werkt met Internet Explorer. In Firefox of een andere browser werkt het anders.

Stappenplan Website de Palster. Deze uitleg werkt met Internet Explorer. In Firefox of een andere browser werkt het anders. Stappenplan Website de Palster Deze uitleg werkt met Internet Explorer. In Firefox of een andere browser werkt het anders. 1 Inhoudsopgave: Titel bladzijde Aanmelden op de website 3 Foto s in het fotoboek

Nadere informatie

Zelf een spel maken met GameMaker Les 1: Laat iets bewegen!

Zelf een spel maken met GameMaker Les 1: Laat iets bewegen! Zelf een spel maken met GameMaker Les 1: Laat iets bewegen! 1) Start het programma GameMaker Studio. 2) Klik op het tabje New om een nieuw project te starten. 3) Geen het project een naam en klik op Create.

Nadere informatie

Installatie Steam. 2 Open Internet Explorer. 3 Typ de volgende link in de navigatiebar : https://naamvancallcenter.steam.eu.com/tmsteam.

Installatie Steam. 2 Open Internet Explorer. 3 Typ de volgende link in de navigatiebar : https://naamvancallcenter.steam.eu.com/tmsteam. Installatie Steam. 1 Sluit uw headset aan op de computer. Deze headset mag van elke kwaliteit zijn; vanzelfsprekend zal het geluid beter zijn naarmate de headset beter is. De enige vereiste is dat de aansluiting

Nadere informatie

Scratch in drie uur. Hallo, mijn naam is Minti Mint! Ik ga je uitleggen hoe je je eigen computerspel kunt maken. We gaan een racespel maken!

Scratch in drie uur. Hallo, mijn naam is Minti Mint! Ik ga je uitleggen hoe je je eigen computerspel kunt maken. We gaan een racespel maken! Scratch in drie uur Hallo, mijn naam is Minti Mint! Ik ga je uitleggen hoe je je eigen computerspel kunt maken. We gaan een racespel maken! Bernd Gärtner Nederlandse vertaling en bewerking: Martine Segers

Nadere informatie

Zelf een spel maken met GameMaker Les 3: Vijanden en levens

Zelf een spel maken met GameMaker Les 3: Vijanden en levens Zelf een spel maken met GameMaker Les 3: Vijanden en levens 1) Start het programma GameMaker en laad het spel van de tweede les. 2) We gaan een vijand voor de speler maken. Klik met de rechtermuisknop

Nadere informatie

4. Bij de eerste inlogsessie, wordt je gevraagd om de Google gebruiksvoorwaarden te accepteren. Klik op "Ik ga akkoord. Ga door naar mijn account.

4. Bij de eerste inlogsessie, wordt je gevraagd om de Google gebruiksvoorwaarden te accepteren. Klik op Ik ga akkoord. Ga door naar mijn account. De allereerste keer inloggen bij Google apps for education 1. Log in via de knop rechtsboven in je browser. a. Zie je de knop niet? Surf dan eerst naar www.google.be b. Ben je al ingelogd onder een andere

Nadere informatie

De Kleine WordPress Handleiding

De Kleine WordPress Handleiding Introductie Dit is geen uitgebreide handleiding om een WordPress website of blog mee te bouwen. Het is ook geen overzicht van alle aspecten die een WordPress website zo bijzonder maken en geen verhandeling

Nadere informatie

1. Kennismaken met Impress

1. Kennismaken met Impress 1. Kennismaken met Impress In deze module leert u: 1 Wat Impress is; 2 Impress starten; 3 Een nieuwe presentatie maken; 4 Instellingen van Impress wijzigen; 5 Opslaan en openen. 1 Wat is Impress? OpenOffice.org

Nadere informatie

Handleiding Word Press voor de bewoners Westerkaap 1

Handleiding Word Press voor de bewoners Westerkaap 1 1 Handleiding Word Press voor de bewoners Westerkaap 1 Inhoud: Inloggen Pagina 1 Algemeen Pagina 2 Berichten Pagina 2 Bericht bewerken, Linken Pagina 3-4 Plaatje toevoegen bericht Pagina 5-6 Bericht publiceren

Nadere informatie

Download DIGIPRAAT in de Google playstore! Zoek naar eu.desmidt om DIGIPRAAT en DIGITAAL te vinden!

Download DIGIPRAAT in de Google playstore! Zoek naar eu.desmidt om DIGIPRAAT en DIGITAAL te vinden! Download DIGIPRAAT in de Google playstore! Zoek naar eu.desmidt om DIGIPRAAT en DIGITAAL te vinden! Inhoud Hoe werkt het:... 1 Aanmaken van een nieuwe groep met eigen afbeelding, tekst en spraak... 4 Instellingen...

Nadere informatie

HANDLEIDING Q1600 Fashion

HANDLEIDING Q1600 Fashion HANDLEIDING Q1600 Fashion Pag.: 1 Inhoudsopgave Inleiding...3 Beheer...4 Kleurlijsten beheren...4 Kleurlijst groep aanmaken...6 Kleurlijst groep verwijderen...6 Kleuren (kleurnummers) aanmaken/wijzigen...7

Nadere informatie

HANDLEIDING PROGRAMMEREN IN PASCAL (LAZARUS)

HANDLEIDING PROGRAMMEREN IN PASCAL (LAZARUS) HANDLEIDING PROGRAMMEREN IN PASCAL (LAZARUS) Vereiste voorkennis Voldoende kennis van het besturingssysteem (in deze handleiding wordt uitgegaan van Windows) De basisprincipes van programmeren Vereiste

Nadere informatie

Gemaakt door: Tessa Romviel & Pepijn t Hoen Leerlingen VWO 6 SG Spieringshoek Als onderdeel voor het vak Informatica

Gemaakt door: Tessa Romviel & Pepijn t Hoen Leerlingen VWO 6 SG Spieringshoek Als onderdeel voor het vak Informatica Gemaakt door: Tessa Romviel & Pepijn t Hoen Leerlingen VWO 6 SG Spieringshoek Als onderdeel voor het vak Informatica Inhoud Wat is Scratch? 3 Les 1: Inloggen 3 Les 2: Basisuitleg 4 Scripts 4 Uiterlijken

Nadere informatie

Handleiding MOBICROSS actie banners

Handleiding MOBICROSS actie banners Handleiding MOBICROSS actie banners Met de kant & klare MOBICROSS actie banners vergroot jij je kans om sneller je netwerk te bouwen. Je kunt je eigen campagne maken door de banners op je website te plaatsen,

Nadere informatie

Wooncomplexinformatie op woonzorg.nl

Wooncomplexinformatie op woonzorg.nl Datum: 15-12-2015 Van: John Winckel Wooncomplexinformatie op woonzorg.nl Voor het bijhouden van wooncomplexgegevens waaronder direct beschikbare huurwoningen. LET OP: wanneer je contactgegevens van toeleveranciers

Nadere informatie

Content tips & tricks

Content tips & tricks Content tips & tricks E-learning vormt de basis van je lessen en als docent steek je veel tijd in het ontwikkelen en vormgeven van deze content. Met deze handleiding maken we dit proces net even makkelijker

Nadere informatie

Handicom. Symbol for Windows. Image Manager. (Versie 4) Handicom, 2011, Nederland

Handicom. Symbol for Windows. Image Manager. (Versie 4) Handicom, 2011, Nederland Handicom Symbol for Windows Image Manager (Versie 4) Handicom, 2011, Nederland Inhoud Inleiding... 2 1. Image Manager hoofdscherm...3 1.1 Onderdelen van het venster...3 1.2 Het scherm veranderen...3 1.2.1

Nadere informatie

Windows 8, Windows 8.1, deel II

Windows 8, Windows 8.1, deel II Windows 8, Windows 8.1, deel II Opstarten op bureaublad Daar we toch de gewoonte hebben om via het bureaublad te werken, is het misschien handig om de PC te laten opstarten op het bureaublad in plaats

Nadere informatie

CMS Template Handleiding

CMS Template Handleiding CMS Template Handleiding Inhoudsopgave Inloggen in het CMS... 3 Pagina s toevoegen... 4 Pagina s bewerken... 6 Een link toevoegen... 7 Een afbeelding toevoegen... 9 Foto s plaatsen op de fotopagina...

Nadere informatie

Handleiding help Sinterklaas!

Handleiding help Sinterklaas! Handleiding help Sinterklaas! 1. Ga naar Scratch en start een nieuw project! Ga met je browser naar https://scratch.mit.edu/projects/editor/ om meteen te beginnen met een nieuw project. Je kunt de taal

Nadere informatie

Aan de slag met Twitter

Aan de slag met Twitter Aan de slag met Twitter Registreren De URL (het adres op het internet) om te registreren is: https://twitter.com/signup In dit voorbeeld is er een Twitter 1 account aangemaakt voor een woning die te koop

Nadere informatie

TeD Tekst en Design. Basisinformatie voor klein gebruik van het cms Made Simple

TeD Tekst en Design. Basisinformatie voor klein gebruik van het cms Made Simple Basisinformatie voor klein gebruik van het cms Made Simple 1 Inhoud Inhoud 2 Inleiding 3 Inloggen in het CMS 3 Teksten plaatsen/aanpassen 4 Een link aanmaken 4 Gebruikers toevoegen/ verwijderen 5 Werken

Nadere informatie

bug fixen F. Vonk versie

bug fixen F. Vonk versie 2017 bug fixen F. Vonk versie 1 24-7-2017 inhoudsopgave 1. inleiding... - 3-2. bug fixen... - 4-3. Sokoban... - 5-4. Breakout... - 7-5. Pac-Man... - 8-6. Asteroids... - 9-7. Snake... - 10-8. Super Mario...

Nadere informatie

Handleiding website SVNL voor evenementenverkeersregelaars

Handleiding website SVNL voor evenementenverkeersregelaars Handleiding website SVNL voor evenementenverkeersregelaars Met deze handleiding maken wij u graag wegwijs op de website van Stichting Verkeersregelaars Nederland (SVNL). U vindt hier stap voor stap uitleg

Nadere informatie

Legal Eagle Agenda handleiding versie 2.8 december 2007

Legal Eagle Agenda handleiding versie 2.8 december 2007 Legal Eagle Agenda handleiding versie 2.8 december 2007 Algemeen... 2 Afspraken... 6 Synchroniseren... 6 Synchroniseren... 7 Export... 8 Filters... 9 * Er kan niet met Outlook Express gesynchroniseerd

Nadere informatie

CS-WebDesign.nl. Invoeren van een product in de editor

CS-WebDesign.nl. Invoeren van een product in de editor CS-WebDesign.nl Invoeren van een product in de editor 2005-2012 Courbois Software Beuningen Fazantlaan 63, 6641 XW Beuningen. www.courboissoftware.com & www.cs-webdesign.nl 024 677 25 46 - info@cs-webdesign.nl

Nadere informatie

digitale ontwerp technieken SketchUp

digitale ontwerp technieken SketchUp L DOT digitale ontwerp technieken SketchUp SketchUp L 1.1 Inleiding Veel klanten van een tuinarchitect kunnen zich moeilijk verbeelden hoe de tuintekening van de architect er in werkelijkheid uit komt

Nadere informatie

Formulieren maken met Dreamweaver CS 4/CS 5

Formulieren maken met Dreamweaver CS 4/CS 5 Formulieren maken met Dreamweaver CS 4/CS 5 In deze handleiding leer je om een formulier en elementen die je binnen een formulier kunt gebruiken, te ontwerpen met Dreamweaver. Het uitgangspunt is dat dit

Nadere informatie

Wat is er veranderd in Prezi?

Wat is er veranderd in Prezi? Wat is er veranderd in Prezi? Update voor Prezi voor kids januari 2014 Door: Hedwyg van Groenendaal Prezi zit niet stil en is constant bezig om de tool te verbeteren. Omdat het boek op sommige punten niet

Nadere informatie

De WordPress 3.5 Beginners Handleiding

De WordPress 3.5 Beginners Handleiding De WordPress 3.5 Beginners Handleiding Internetbureau Elephant april 13 Inhoud Introductie... 2 Inloggen... 3 Het dashboard... 5 Berichten en pagina's... 6 Nieuw Bericht... 6 Nieuwe Pagina... 8 Afbeeldingen,

Nadere informatie

Handleiding CrisisConnect app beheersysteem

Handleiding CrisisConnect app beheersysteem Handleiding CrisisConnect app beheersysteem Inhoudsopgave 1. Start 1.1. Vereisten gebruik 1.2. Inloggen 1.3. Wachtwoord wijzigen 2. Vullen 2.1. Dossiers 2.2. Processen 2.2.1. Tekst toevoegen 2.2.2. Bijlagen

Nadere informatie

Bijlage Inlezen nieuwe tarieven per verzekeraar

Bijlage Inlezen nieuwe tarieven per verzekeraar ! Bijlage inlezen nieuwe tarieven (vanaf 3.2) Bijlage Inlezen nieuwe tarieven per verzekeraar Scipio 3.303 biedt ondersteuning om gebruikers alle tarieven van de verschillende verzekeraars in één keer

Nadere informatie

Handleiding. Opslag Online. voor Android. Versie februari 2014

Handleiding. Opslag Online. voor Android. Versie februari 2014 Handleiding Opslag Online voor Android Versie februari 2014 Inhoudsopgave Hoofdstuk 1. Inleiding 3 Hoofdstuk 2. Installatie 4 2.1 Opslag Online downloaden via QR-code 4 2.2 Opslag Online downloaden via

Nadere informatie

Module 2: Wat is Scratch?

Module 2: Wat is Scratch? Module 2: Wat is Scratch? Inhoudsopgave Module 2: Wat is Scratch?...1 Wat is Scratch?...2 Eerste stappen...3 Je eerste Scratch programma...6 Scratch coördinaten...7 Verander de achtergrond van je werkgebied...10

Nadere informatie

talstelsels F. Vonk versie 1 30-7-2013

talstelsels F. Vonk versie 1 30-7-2013 2013 talstelsels F. Vonk versie 1 30-7-2013 inhoudsopgave 1. inleiding... - 2-2. binair... - 4-3. hexadecimaal... - 10-4. octaal (vwo)... - 17-5. bonus opgaves... - 20-6. wat heb je geleerd... - 21 - Dit

Nadere informatie

Getting-started tutorial. Versie 1.0

Getting-started tutorial. Versie 1.0 Getting-started tutorial Versie 1.0 Getting-started Apparaat toevoegen Installatie en activatie Getting-started tutorial In deze getting-started tutorial gaan we u helpen met de eerste stappen met ROXY,

Nadere informatie

SportCTM 2.0 Sporter

SportCTM 2.0 Sporter SportCTM 2.0 Sporter APP Inloggen Dotcomsport heeft ter ondersteuning van de dagelijkse praktijk ook een APP ontwikkeld, om data invoer te vereenvoudigen. Deze APP ondersteunt de onderdelen; Agenda (invoer

Nadere informatie

Handleiding JCreator. Inhoud. Een Workspace en een eerste project maken

Handleiding JCreator. Inhoud. Een Workspace en een eerste project maken Handleiding JCreator Inhoud Een Workspace en een eerste project maken Een tweede project maken De editor van JCreator Aanpassen van de basis-directory Documentatie over klassen en methoden van de JDK Bestand

Nadere informatie

Om in te loggen in het CMS (Content Management Systeem) gaat u naar http://domeinnaam.nl/admin Hier ziet u het inlogscherm:

Om in te loggen in het CMS (Content Management Systeem) gaat u naar http://domeinnaam.nl/admin Hier ziet u het inlogscherm: CMS Handleiding Inhoudsopgave Inloggen in het CMS... 3 Pagina s toevoegen... 4 Pagina s bewerken... 7 Een link toevoegen... 8 Een afbeelding toevoegen... 10 Foto s plaatsen op de fotopagina... 12 Media...

Nadere informatie

ParkinsonThuis Studie. Installatiehandleiding

ParkinsonThuis Studie. Installatiehandleiding ParkinsonThuis Studie. Installatiehandleiding Inhoud Inleiding... 3 1. Installeren van de Pebble app... 4 2. Koppelen van het Pebble horloge en de smartphone... 6 3. Installeren van de Fox Inzicht App...

Nadere informatie

Handleiding CMS Online Identity Webontwikkeling. Handleiding CMS

Handleiding CMS Online Identity Webontwikkeling. Handleiding CMS Handleiding CMS 1 Inhoudsopgave 1. Inloggen... 3 2. Het CMS... 3 3. Websitecontent... 4 3.1 Een nieuwe pagina toevoegen... 4 3.2 Een pagina wijzigen... 4 3.3 Een pagina verwijderen... 5 4. De WYSIWYG editor...

Nadere informatie