Avlyssna fönsterhändelser

Adobe AIR 1.0 och senare

Om du vill avlyssna händelser som skickas av ett fönster registrerar du en lyssnare med fönsterinstansen. Om du till exempel vill avlyssna closing-händelsen registrerar du en lyssnare med fönstret enligt följande:

myWindow.addEventListener(Event.CLOSING, onClosingEvent); 

När en händelse skickas refererar egenskapen target till det fönster som skickar händelsen.

De flesta fönsterhändelser har två relaterade meddelanden. Det första meddelandet talar om att en fönsterändring kommer att utföras (och kan avbrytas), medan det andra meddelandet talar om att ändringen har utförts. När en användare exempelvis klickar på stängningsknappen i ett fönster, skickas händelsemeddelandet closing. Om inga lyssnare avbryter händelsen stängs fönstret och close-händelsen skickas till eventuella lyssnare.

Vanligtvis skickas varningshändelser, till exempel closing, endast när systemfönsterstandarden har använts för att utlösa en händelse. Exempelvis skickas inte closing-händelsen automatiskt när metoden close() för fönstret anropas – endast close-händelsen skickas. Du kan däremot skapa en closing-händelse och skicka den med hjälp av Window-metoden dispatchEvent().

De fönsterhändelser som skickar ett Event-objekt är följande:

Händelse

Beskrivning

activate

Skickas när fönstret får fokus.

deactivate

Skickas när fönstret förlorar fokus.

closing

Skickas när fönstret håller på att stängas. Detta inträffar endast automatiskt när stängningsknappen för systemfönsterstandarden används eller, i Mac OS X, när kommandot Avsluta aktiveras.

close

Skickas när fönstret har stängts.

De fönsterhändelser som skickar ett NativeWindowBoundsEvent-objekt är följande:

Händelse

Beskrivning

moving

Skickas omedelbart innan fönstrets övre, vänstra hörn ändrar position, antingen på grund av flytt, storleksändring eller för att fönstrets visningsläge ändras.

move

Skickas när det övre, vänstra hörnet har ändrat position.

resizing

Skickas omedelbart innan fönstrets bredd eller höjd ändras till följd av antingen storleksändring eller ändring av visningsläget.

resize

Skickar när fönstrets storlek har ändrats.

Med NativeWindowBoundsEvent-händelser kan du använda egenskaperna beforeBounds och afterBounds för att identifiera fönstergränserna före och efter den förestående eller slutförda ändringen.

De fönsterhändelser som skickar ett NativeWindowDisplayStateEvent-objekt är följande:

Händelse

Beskrivning

displayStateChanging

Skickas omedelbart innan fönstrets visningsläge ändras.

displayStateChange

Skickar när fönstrets visningsläge har ändrats.

Med NativeWindowDisplayStateEvent-händelser kan du använda egenskaperna beforeDisplayState och afterDisplayState för att identifiera fönstrets visningsläge före och efter den förestående eller slutförda ändringen.

I vissa Linux-fönsterhanterare skickas ingen händelse för ändrat visningsläge när ett fönster som har en inställning för högsta storlek maximeras. (Fönstret visas i maximerat fönsterläge, men fönstrets storlek ändras inte.)