Als u wilt luisteren naar gebeurtenissen die worden verzonden door een venster, registreert u een listener bij de vensterinstantie. Als u bijvoorbeeld naar de gebeurtenis closing wilt luisteren, registreert u als volgt een listener bij het venster:
myWindow.addEventListener(Event.CLOSING, onClosingEvent);
Wanneer een gebeurtenis wordt verzonden, verwijst de eigenschap
target
naar het venster dat de gebeurtenis heeft verzonden.
De meeste venstergebeurtenissen hebben twee gerelateerde berichten. Het eerste bericht geeft aan dat er een vensterwijziging ophanden is (die kan worden geannuleerd), terwijl het tweede bericht aangeeft dat de wijziging heeft plaatsgevonden. Wanneer een gebruiker bijvoorbeeld op het sluitvak van een venster klikt, wordt het bericht van de gebeurtenis closing verzonden. Als de gebeurtenis niet door listeners wordt geannuleerd, wordt het venster gesloten en wordt het bericht van de gebeurtenis close verzonden naar eventuele listeners.
Gewoonlijk worden waarschuwingsgebeurtenissen, zoals
closing
, alleen verzonden wanneer het systeemchroom is gebruikt om een gebeurtenis te activeren. Als bijvoorbeeld de methode
close()
van het venster wordt aangeroepen, wordt niet automatisch de gebeurtenis
closing
verzonden, maar wordt alleen de gebeurtenis
close
verzonden. U kunt echter een closing-gebeurtenisobject maken en dit object verzenden met de methode
dispatchEvent()
van het venster.
De volgende venstergebeurtenissen verzenden een Event-object:
Gebeurtenis
|
Beschrijving
|
activate
|
Deze gebeurtenis wordt verzonden wanneer het venster de focus krijgt.
|
deactivate
|
Deze gebeurtenis wordt verzonden wanneer het venster de focus verliest.
|
closing
|
Deze gebeurtenis wordt verzonden wanneer het venster zal worden gesloten. Dit gebeurt alleen automatisch als op het sluitvak van het systeemchroom wordt geklikt of wanneer in Mac OS X de opdracht Stop wordt aangeroepen.
|
close
|
Deze gebeurtenis wordt verzonden wanneer het venster is gesloten.
|
De volgende venstergebeurtenissen verzenden een NativeWindowBoundsEvent-object:
Gebeurtenis
|
Beschrijving
|
moving
|
Deze gebeurtenis wordt verzonden vlak voordat de positie van de linkerbovenhoek van het venster wordt gewijzigd doordat het venster wordt verplaatst of het vensterformaat of de weergavestatus van het venster wordt gewijzigd.
|
move
|
Deze gebeurtenis wordt verzonden nadat de positie van de linkerbovenhoek is gewijzigd.
|
resizing
|
Deze gebeurtenis wordt verzonden vlak voordat de breedte of hoogte van het venster wordt gewijzigd doordat het vensterformaat of de weergavestatus van het venster wordt gewijzigd.
|
resize
|
Deze gebeurtenis wordt verzonden nadat het formaat van het venster is gewijzigd.
|
Voor NativeWindowBoundsEvent-gebeurtenissen kunt u de eigenschappen
beforeBounds
en
afterBounds
gebruiken om de venstergrenzen te bepalen vóór en na de aanstaande of doorgevoerde wijziging.
De volgende venstergebeurtenissen verzenden een NativeWindowDisplayStateEvent-object:
Gebeurtenis
|
Beschrijving
|
displayStateChanging
|
Deze gebeurtenis wordt verzonden vlak voordat de weergavestatus van het venster wordt gewijzigd.
|
displayStateChange
|
Deze gebeurtenis wordt verzonden nadat de weergavestatus van het venster is gewijzigd.
|
Voor NativeWindowDisplayStateEvent-gebeurtenissen kunt u de eigenschappen
beforeDisplayState
en
afterDisplayState
gebruiken om de weergavestatus van het venster te bepalen vóór en na de aanstaande of doorgevoerde wijziging.
Bij bepaalde Linux-vensterbeheerprogramma's wordt er geen gebeurtenis die een wijziging van de weergavestatus aangeeft verzonden wanneer een venster met een instelling voor maximaal vensterformaat, wordt gemaximaliseerd. (Het venster wordt ingesteld op de maximale weergavestatus, maar het formaat ervan wordt niet gewijzigd.)