Android apps met App Inventor 2

Maat: px
Weergave met pagina beginnen:

Download "Android apps met App Inventor 2"

Transcriptie

1 2016 Android apps met App Inventor 2 F. Vonk, C. Crombach, R. Eggenkamp versie

2 inhoudsopgave 1. inleiding installatie ontwikkelomgeving Mollen Meppen Schrandere Scholier Meteoor project exporteren 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 Bij App Inventor 2 zit een omgeving om een smartphone te emuleren (na te doen). Deze werkt echter niet erg betrouwbaar en is traag. Daarom ga je testen met een echte telefoon. Als je zelf geen Android smartphone hebt, dan kun je tijdens de les één van de schoolsmartphones gebruiken. Je zult dan misschien wel moeten delen. thuis installeren Thuis heb je alle rechten op je computer en zou de emulator wel moeten werken. Het is belangrijk dat je de software, die App Inventor 2 nodig heeft om de "Blocks Editor" en de emulator uit te voeren, goed installeert. 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 - 6 -

8 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. testen op je telefoon In de knoppenbalk kun je via de Build knop de "App (provide QR code for apk)" link vinden, zie Figuur 10. Als je op de link klikt en even wacht, dan krijg je na verloop van tijd een venster met daarin een QR code, zie Figuur 11. 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. Op de schoolsmartphones is deze al geïnstalleerd. Let op: Soms duurt het genereren van de QR code lang, omdat het druk is op de server die dit proces afhandelt. Wanneer je langer dan een minuut moet wachten is het beter om het genereren af te breken (door de pagina te verversen met F5) en opnieuw te starten met het genereren van een QR code. Figuur 10: de "App (provide QR code for apk)" link Figuur 11: een QR code behorende bij de App Inventor 2 app Let op: De meeste Android telefoons zijn standaard zo ingesteld, dat ze alleen applicaties vanuit de Play Store kunnen installeren. Aangezien jouw app niet uit de Play Store komt moet je dit feature uitschakelen. Dit doe je door "Onbekende - 9 -

11 bronnen" aan te vinken in het "Beveiliging" onderdeel van "Instellingen". Op de schoolsmartphones is dit al gebeurd. We raden je echter aan om dit niet permanent aan te laten staan. Dus zet het aan het einde van de les ook weer uit. Na het openen van de QR code scanner op je telefoon, 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 code en geeft je de optie de URL die hierin verstopt is te openen in de browser. Sta dit toe en, na het openen van de browser, wordt de download van het APK bestand gestart. Na het downloaden ga je naar de downloads, installeer je de app en voert hem uit. Let op: Iedere volgende keer dat je dezelfde app wilt installeren zal de telefoon vragen of je de applicatie wilt vervangen. Dit bevestig je dan en de applicatie wordt vervolgens opnieuw geïnstalleerd. Nadat je de app hebt opgestart en deze is geladen, dan zie je het volgende. Klik op de mol en kijk wat er gebeurt. Op het moment gebeurt er nog niet zoveel spannends en uitdagends, maar daar kun je wat aan doen! En dat ga je ook doen. Hieronder volgt een serie opdrachten waardoor je "Mollen Meppen" tot een echt spel kunt maken. We raden je aan om na iedere opgave waarin je de code aanpast deze uit te testen op je telefoon

12 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"

13 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

14 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

15 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

16 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

17 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

18 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

19 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"

20 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

21 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

22 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

23 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 je telefoon. 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 20. Figuur 20: locatie van de My Projects knop Klik vervolgens op de knop Start new project. Je krijgt dan de dialoog uit Figuur 21 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 21: de "Create new project" dialoog

24 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

25 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!

26 Als het goed is heb je de opgaves op 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 22. Figuur 22: 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

27 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

28 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

29 opgave 5.6 Je gaat beginnen met het aanpassen van de gebruikersinterface. Maak de interface na zoals je ziet in Figuur 23. In dit figuur zie je twee labels waarvan je later de tekst gaat aanpassen vanuit de "Blocks editor". Figuur 23: 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

30 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

31 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 24 om te zien wat er in de "Blocks Editor" zou moeten staan

32 Figuur 24: resultaat van opgave 5.8 in de "Blocks Editor" globale versus lokale variabelen In de oplossing in Figuur 24 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 je app moet herstarten 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

33 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

34 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

35 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

36 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

37 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

38 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 25 zie je drie parameters, te weten azimuth, pitch en roll. Figuur 25: 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"

39 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

40 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

41 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

42 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

43 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

44 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

45 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

46 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

47 7. project exporteren.aia bestand Als je het resultaat van deze en de App Extra Module in gaat leveren, dan moet je een zogenaamd.aia bestand maken. Dit doe je als volgt. Ga naar het "My Projects" scherm, daar zie je een overzicht van je projecten. Selecteer het project dat je wilt exporteren, laten we zeggen dat dit project MyProject1 heet. Kies "Export selected project (.aia) to my computer" onder de Projects knop, zie volgende afbeelding. Sla het bestand op een handige plek op en als het goed is heb je op die locatie nu een bestand genaamd MyProject1.aia

48 .apk bestand Als je het resultaat van de opdracht straks in gaat leveren, dan moet je zowel een.aia als een.apk bestand maken. Een.apk bestand maken doe je als volgt. Ga naar het "My Projects" scherm, daar zie je een overzicht van je projecten. Selecteer het project dat je wilt exporteren, laten we zeggen dat dit project MyProject1 heet. Kies "App (save.apk to my computer)" onder de Build knop, zie volgende afbeelding. Sla het bestand op een handige plek op en als het goed is heb je op die locatie nu een bestand genaamd MyProject1.apk

49 8. 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

50 Bestanden met extensie.aia zijn feitelijk ZIP bestanden. Je kunt hun bestandsextensie veranderen in.zip en vervolgens de inhoud van de bestanden bekijken. Nu kun je gaan samenvoegen. Pak het bestand van het hoofdproject, dus MyProject1.zip, uit naar een map. Dit ziet er als volgt uit (bij ai_vonk_f zal iets anders staan, namelijk je eigen login naam voor App Inventor 2). Kopieer vervolgens, uit het MyProject2.zip bestand, de schermbestanden en assets die je wilt overzetten. Kopieer deze naar de overeenkomstige plaatsen in de folder waarin je het hoofdproject hebt uitgepakt. De structuur ziet er weer als volgt uit. De schermbestanden staan in de MyProjects2 map en de assets staan in de assets map. Ieder scherm heeft 3 bestanden (.bky,.scm en.yail), zie de volgende afbeelding. Deze moet je alledrie kopiëren voor alle schermen, die je wilt overzetten naar je hoofdproject. Ook moet je alle assets kopiëren, die je wilt overzetten

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 2015 Android apps met App Inventor 2 F. Vonk versie 1 27-10-2015 inhoudsopgave 1. inleiding... - 2-2. installatie... - 3-3. ontwikkelomgeving... - 5-4. Mollen Meppen... - 9-5. Schrandere Scholier... -

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

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

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

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

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

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

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

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

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

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

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

GameMaker Language. F. Vonk versie

GameMaker Language. F. Vonk versie 2014 GameMaker Language F. Vonk versie 2 5-3-2014 Inhoudsopgave 1. inleiding... - 3-2. GML en GameMaker... - 4-3. links... - 10 - Dit werk is gelicenseerd onder een Creative Commons Naamsvermelding NietCommercieel

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 gebruik Scorebord-app

Handleiding gebruik Scorebord-app Handleiding gebruik Scorebord-app 1. Scorebord-app Op de door Mediamens geleverde Android Sticks is de Scorebord-app al geïnstalleerd. Om de Android stick aan te sluiten, volgt u de volgende stappen: 1.

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

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

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

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. Phera. Quick Start Handleiding Phera Versie 1.8. Aanvullende informatie. Artikelnummer: PHERA. Versie: Mei 2016

Handleiding. Phera. Quick Start Handleiding Phera Versie 1.8. Aanvullende informatie. Artikelnummer: PHERA. Versie: Mei 2016 Handleiding Phera Quick Start Handleiding Phera Versie 1.8 Aanvullende informatie Artikelnummer: PHERA Versie: Mei 2016 ARAS Security B.V. Postbus 218 5150 AE Drunen NL Thomas Edisonweg 5 5151 DH Drunen

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

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 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 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

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

IQ LEADS Adres: Curieweg 8E Postcode: 2408 BZ Plaats: ALPHEN AAN DEN RIJN Telefoon: (0172)

IQ LEADS Adres: Curieweg 8E Postcode: 2408 BZ Plaats: ALPHEN AAN DEN RIJN Telefoon: (0172) 1 Inhoud Tips voor u begint... 3 Beginnen met WordPress... 4 Login... 4 Dashboard... 4 Back-up maken van uw website... 5 Bloggen en Pagina s... 6 Tekst editor... 6 Nieuwsbericht maken (Bloggen)... 6 Pagina

Nadere informatie

Table of contents 2 / 15

Table of contents 2 / 15 Office+ 1 / 15 Table of contents Introductie... 3 Installatie... 4 Installatie... 4 Licentie... 7 Werken met Office+... 8 Instellingen... 8 Office+ i.c.m. module Relatiebeheer... 9 Office+ i.c.m. module

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

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

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

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

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

RUBRICEREN, UPDATEN EN BESTANDEN VERWIJDEREN

RUBRICEREN, UPDATEN EN BESTANDEN VERWIJDEREN RUBRICEREN, UPDATEN EN BESTANDEN VERWIJDEREN RUBRICEREN, UPDATEN, VERWIJDEREN Met dit werkblad ga je oefenen met het rubriceren van apps, het updaten van apps en het verwijderen van bestanden van je smartphone

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

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

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

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

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

De tekstverwerker. Afb. 1 de tekstverwerker

De tekstverwerker. Afb. 1 de tekstverwerker De tekstverwerker De tekstverwerker is een module die u bij het vullen van uw website veel zult gebruiken. Naast de module tekst maken onder andere de modules Aankondigingen en Events ook gebruik van de

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

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

USB Webserver installatie en gebruik

USB Webserver installatie en gebruik 2014 USB Webserver installatie en gebruik F. Vonk versie 2 14-8-2014 Inhoudsopgave 1. Inleiding... - 2-2. Installatie... - 3-3. USB Webserver... - 4-4. De MySQL omgeving... - 5-5. Een PHP script runnen...

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

Procedure activeren van de MFA applicatie op een mobiele telefoon

Procedure activeren van de MFA applicatie op een mobiele telefoon Procedure activeren van de MFA applicatie op een mobiele telefoon Benodigdheden: - Mobiele telefoon. o Sta push berichten of meldingen, gebruik van de camera en dergelijke toe. Dit kun je onder instellingen

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

BEGINNER JAVA Inhoudsopgave

BEGINNER JAVA Inhoudsopgave Inhoudsopgave 6 Configuratie Hallo wereld! Praten met de gebruiker Munt opgooien Voorwaarden Lussen......6 Configuratie Met deze Sushi kaarten ga je een simpel spel maken met één van de meest populaire

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

Snel aan de slag Installatiegids (versie 1.0)

Snel aan de slag Installatiegids (versie 1.0) Internet Control Station Kijk regelmatig op www.klikaanklikuit.nl voor updates Snel aan de slag Installatiegids (versie 1.0) ICS-1000 Het grootste gemak in draadloos schakelen. Eenvoudig uit te breiden

Nadere informatie

Fuel. Handleiding voor installatie en gebruik

Fuel. Handleiding voor installatie en gebruik Fuel Handleiding voor installatie en gebruik Inhoudsopgave 1. Installatie 2. Gebruik - Windows - Linux / Apple / andere systemen - Een nieuw voertuig aanmaken - Uitgaven 3. Onderhoud - Waarschuwingen -

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 scoolplan COACH

HANDLEIDING scoolplan COACH HANDLEIDING Inhoud Hoofdmenu pagina 3 Short cut: Interne notities pagina 5 IDP overzicht pagina 7 Menu pagina 10 Interne notities pagina 12 Notities pagina 14 Volgende IDP pagina 15 Archief pagina 17 Vragen

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

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

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

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

Het hele scherm besturen

Het hele scherm besturen De Sense HAT programmeren Het hele scherm besturen Met de Sense HAT kun je allerlei omstandigheden in het ISS waarnemen en opslaan. Ook kun je ze laten zien als tekst of plaatje op het ledscherm. In deze

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

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

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

Handleiding planner. Handleiding RoosterPlaats pagina 1

Handleiding planner. Handleiding RoosterPlaats pagina 1 Handleiding planner Handleiding RoosterPlaats pagina 1 In dit document wordt uiteengezet hoe u aan de hand van onderstaande 5 stappen een rooster kan maken. Voordat u kunt beginnen met het creëren van

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. 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

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

ZIVVER Gebruikershandleiding

ZIVVER Gebruikershandleiding Versie: 2.0 Datum: 11 april 2017 support@zivver.com www.zivver.com Inhoud Welkom bij ZIVVER!... 3 1. Inloggen in je online veilige postvak... 4 2. Stuur een veilig bericht vanuit je online veilige postvak...

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

SCRATCH VOOR BEGINNERS

SCRATCH VOOR BEGINNERS Inhoudsopgave 1 2 3 4 5 6 7 Beginnen met Scratch Code toevoegen of verwijderen Dingen laten bewegen Er goed uitzien Alle sprites Op afstand bedienbare vis Vissen! 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1 Beginnen

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

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

Central Station. CS website

Central Station. CS website Central Station CS website Versie 1.0 18-05-2007 Inhoud Inleiding...3 1 De website...4 2 Het content management systeem...5 2.1 Inloggen in het CMS... 5 2.2 Boomstructuur... 5 2.3 Maptypen... 6 2.4 Aanmaken

Nadere informatie

Een eerste applicatie

Een eerste applicatie Een eerste applicatie 2.1 Inleiding Programmeren in Visual Basic.NET doe je niet alleen door regels met code te schrijven. Je begint met het ontwerpen van een venster in de design mode met allerlei controls,

Nadere informatie

Je gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python.

Je gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python. 1 Je gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python. Voordat je leert programmeren, moet je jouw pc zo instellen dat

Nadere informatie

Maak je eigen Apps. Deel 3 (versie 1.0 NL ) door Serge de Beer

Maak je eigen Apps. Deel 3 (versie 1.0 NL ) door Serge de Beer Maak je eigen Apps Deel 3 (versie 1.0 NL 09-10-2011) door Serge de Beer Bewegende Actors Een statische App kan heel interessant zijn, maar meestal wordt het pas echt interessant, als er ook beweging is

Nadere informatie

Augustus& Handleiding - Publisher Tool 3

Augustus& Handleiding - Publisher Tool 3 Augustus& 15 16 Handleiding - Publisher Tool 3 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

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

Welkom bij BOEKLEZER

Welkom bij BOEKLEZER Welkom bij BOEKLEZER Claro Boeklezer is een boek lezer die gebruikers in staat stelt om PDF bestanden te lezen of laten voorlezen met de ingebouwde schermlezer. Met deze boeklezer is het mogelijk om digitale

Nadere informatie

In deze handleiding leest u over hoe u de SolarEdge omvormer kunt activeren, upgraden en configureren.

In deze handleiding leest u over hoe u de SolarEdge omvormer kunt activeren, upgraden en configureren. SolarEdge HD-Wave installatie In deze handleiding leest u over hoe u de SolarEdge omvormer kunt activeren, upgraden en configureren. De Solaredge omvormer heeft nu een ingebouwd wifi chip met een bereik

Nadere informatie

Scratch les 2: Vissen vangen!

Scratch les 2: Vissen vangen! Scratch les 2: Vissen vangen! Diep in de zee Gerrie de diepzeevis heeft honger! Hij lust graag andere visjes, maar zorg dat hij zich niet verslikt in giftige vissen! Dit materiaal is gemaakt door Felienne.

Nadere informatie

Introductie. Handleiding: Owncloud instellen

Introductie. Handleiding: Owncloud instellen Introductie QSIT Owncloud is de hollandse en 100% privacy-veilige variant van Dropbox of Google Drive. Het stelt u in staat om vanaf elk apparaat aan dezelfde bestanden te werken. Omdat wij onze servers

Nadere informatie

Start de applicatie op om naar het inlogscherm te gaan. Onthoudt mijn gegevens

Start de applicatie op om naar het inlogscherm te gaan. Onthoudt mijn gegevens iphone app - Users Users - iphone App Deze Paxton applicatie is gratis verkrijgbaar in de App Store. Deze applicatie is ontwikkeld om gebruikt te worden op elk ios apparaat versie 5.1 of hoger en is uitgevoerd

Nadere informatie

Bijlage 8. Testprogramma brandreactiemodulen LBK

Bijlage 8. Testprogramma brandreactiemodulen LBK Bijlage 8 Testprogramma brandreactiemodulen LBK INHOUDSOPGAVE 1 Algemeen... 1 1.1 Introductie... 1 2 Algemene Setup Instructies... 2 2.1 Setup instructies... 2 2.2 Programma start... 2 3 Configureren...

Nadere informatie

Altijd op de hoogte van de laatste ontwikkelingen.

Altijd op de hoogte van de laatste ontwikkelingen. Beheer Webredactie dashboard Het webredactie dashboard geeft u in één oogopslag een overzicht van de beheersmogelijkheden van uw website. Daarnaast blijft u via het dashboard gemakkelijk op de hoogte van

Nadere informatie

Menu Door op de menuknop te klikken kunt u het hoofdmenu sluiten of openen. De menuknop is het icoon met drie streepjes vlak onder elkaar.

Menu Door op de menuknop te klikken kunt u het hoofdmenu sluiten of openen. De menuknop is het icoon met drie streepjes vlak onder elkaar. Start de Management Drives Viewer. Voer uw gebruikersnaam en wachtwoord in en klik op de button om in te loggen. Na inloggen opent het hoofdmenu automatisch. Menu Door op de menuknop te klikken kunt u

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