programmeren

in python

Jaar 2 - Module 1 - Les 2: Pygame basics

welkom!

Maak een naambordje van je vel.

Met de tekst aan de binnenkant!

vandaag gaan we leren

 

  • Hoe je PyGame gebruikt om iets op het scherm te laten zien

feedback op je naamvel

 

 

  • Jouw kans om de lessen te verbeteren!
  • Schrijf op wat je wel en niet fijn vindt aan de lessen.
  • Lever in, ik reageer iedere week op je feedback.

 

 

nu aan het programmeren!

Met PyGame kunnen we een user interface maken.

thema jaar 2: Pygame

Met PyGame kunnen we een user interface maken​.

 

In een user interface ziet de gebruiker wat hij moet doen, en hoe hij dat moet doen.

 

thema jaar 2: Pygame

Met PyGame kunnen we een user interface maken​.

 

In een user interface ziet de gebruiker wat hij moet doen, en hoe hij dat moet doen.

 

Voor een quiz ziet de gebruiker, bijv de vraag op te beantwoorden, en hoe de vraag beantwoord moet worden, bijv. door op het juiste antwoord te klikken.

thema jaar 2: Pygame

demo

Dit jaar gaan jullie met PyGame zelf mooie user interfaces maken. Eerst voor je geschiedenisquiz (van voor de vakantie)​.

 

 

basiskennis Pygame

Dit jaar gaan jullie met PyGame zelf mooie user interfaces maken. Eerst voor je geschiedenisquiz (van voor de vakantie)​.

 

Vandaag behandelen we de basis van PyGame.

 

basiskennis Pygame

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze code heb je net in de demo gezien.

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze code heb je net in de demo gezien.

We lopen het in stapjes door.

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel laadt PyGame in.

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel zet PyGame 'aan'.

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel zet PyGame 'aan'.

Dat noemen we initializatie.

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze twee regels stellen de variabelen breedte en hoogte in

}

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel stelt de grootte van het scherm in op de waardes van breedte en hoogte.

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze twee regels stellen de variabelen zwart en wit in

}

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel stelt een lettertype in met grootte 40.

 

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel stelt een lettertype in met grootte 40.

Lettertype in het Engels is font .

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel laadt het bestand A.png in.

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regels stellen een variabele in met een vraag, en laten de vraag op het scherm zien. 

}

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regels stellen een variabele in met een vraag, en laten de vraag op het scherm zien. 

 

Hierbij wordt het eerder ingestelde lettertype gebruikt.

}

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel maakt een while lus. Een while lus herhaalt eindeloos.

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel maakt een while lus. Een while lus herhaalt eindeloos.

 

De regels die in de lus zitten, beginnen met 2 spaties.

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel ververst het scherm steeds.

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel zet de achtergrondkleur op zwart.

 

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel zet de achtergrondkleur op zwart.

 

Zwart hebben we zelf ingesteld!

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel zet A op het scherm.

 

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel zet A op het scherm.

 

A hebben we ook zelf ingesteld!

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel zet A op het scherm.

A wordt neergezet op (0, 0)

basiskennis Pygame

import pygame

pygame.init()

breedte = 800
hoogte = 600
screen = pygame.display.set_mode((breedte, hoogte))

zwart = 0, 0, 0
wit = 255, 255, 255

lettertype = pygame.font.SysFont(None, 40)

A = pygame.image.load("A.png")

vraagtekst = "Wat is de hoofdstad van Nederland?"
vraagblok = lettertype.render(vraagtekst, True, wit)

while True:
  pygame.display.flip()
  screen.fill(zwart)
  screen.blit(A, (0, 0))

Deze regel zet A op het scherm.

A wordt neergezet op (0, 0)

Wat is dat (0, 0)?
Weet iemand dat?

coordinatenstelstel

coordinatenstelstel

Dit kennen jullie wel van wiskunde als het goed is!

 

Wat is bijv het coordinaat van deze X?

X

coordinatenstelstel

Dit kennen jullie wel van wiskunde als het goed is!

 

Wat is bijv het coordinaat van deze X?

 

En deze?

X

coordinatenstelstel

PyGame werkt ook met coordinaten. Alleen is het net anders dan bij wiskunde.

 

Ten eerste! We tellen vanaf 0, nooit negatief.

X

coordinatenstelstel

PyGame werkt ook met coordinaten. Alleen is het net anders dan bij wiskunde.

 

Ten eerste! We tellen vanaf 0, nooit negatief.

 

Ten tweede, omlaag is meer en niet minder!

X

coordinatenstelstel

Even oefenen... 

 

Wat is dit in PyGame?

X

coordinatenstelstel

Even oefenen... 

 

Wat is dit in PyGame?

 

En deze?

X

coordinatenstelstel

We mogen in PyGame zelf kiezen hoe breed en hoog het veld is. 

 

We kiezen daar meestal 800 breed en 600 hoog.

X

zodadelijk op de computer...

opdrachten deel b

opdrachten deel b

opdrachten deel b

Python Klas 2 - Module 1 - Les 2

By Felienne

Python Klas 2 - Module 1 - Les 2

Leerdoel Module: PyGame gebruiken Lesdoel: Leren plaatjes inladen en x-y coordinaten gebruiken in PyGame

  • 1,287