H9 Nogmaals Vensters

Leerdoelen

Na het bestuderen van dit hoofdstuk wordt van je verwacht dat je:

  • begrijpt hoe een programma samenwerkt met een besturingssysteem
  • begrijpt hoe gebeurtenissen worden afgehandeld (event-handling)

Theorie

Hoe vindt de communicatie plaats tussen besturingssysteem (OS) en de applet uit voorbeeld 8.7?

Als het programma start, wordt allereerst init() aangeroepen. Daarin kunnen bijvoorbeeld de venstereigenschappen staan van het hoofdvenster zoals de achtergrondkleur. Verder wordt aan Windows doorgegeven welke "kindvensters" er getekend moeten worden, bijvoorbeeld de knoppen en tekstvakken met labels. Als de vensters door Windows getekend zijn kan de inhoud door het programma worden weergegeven.

Dan kan Windows wachten totdat de gebruiker iets doet. In dit geval drukt de gebruiker op de entertoets. Hij had ook op een knop kunnen klikken. Windows geeft de gebeurtenis door aan het programma die daar vervolgens iets mee doet. Vervolgens vertelt repaint() aan Windows dat de vensters opnieuw getekend moeten worden en vertelt Windows, zodra de vensters getekend zijn, dat de inhoud in de vensters kan worden weergegeven. Tot slot wordt er gewacht op de volgende gebeurtenis.