Monitorando eventos de janela

Adobe AIR 1.0 e posterior

Para monitorar os eventos despachados por uma janela, registre um ouvinte na ocorrência da janela. Por exemplo, para monitorar o evento closing, registre um ouvinte na janela, da seguinte maneira:

myWindow.addEventListener(Event.CLOSING, onClosingEvent); 

Quando um evento é despachado, a propriedade target faz referência à janela que o está enviando.

A maioria dos eventos de janela tem duas mensagens relacionadas. A primeira mensagem sinaliza que uma alteração de janela é iminente (e pode ser cancelada), enquanto a segunda indica que a alteração foi executada. Por exemplo, quando um usuário clica no botão Fechar de uma janela, a mensagem do evento closing é despachada. Se nenhum ouvinte cancelar o evento, a janela será fechada e o evento close será despachado para qualquer ouvinte.

Normalmente, os eventos de aviso, como closing , só são despachados quando o cromo do sistema foi usado para acionar um evento. Se você chamar o método de janela close() , por exemplo, o evento closing não será despachado automaticamente (será despachado apenas o evento close ). No entanto, você pode construir um objeto de evento closing e despachá-lo usando o método de janela dispatchEvent() .

Os eventos de janela que despacham um objeto Event são:

Evento

Descrição

activate

Despachado quando a janela recebe foco.

deactivate

Despachado quando a janela perde foco.

closing

Despachado quando a janela está prestes a fechar. Este evento só ocorre automaticamente quando o botão Fechar do cromo do sistema é pressionado ou, no Mac OS X, quando é chamado o comando Quit.

close

Despachado quando a janela foi fechada.

Os eventos de janela que despacham um objeto NativeWindowBoundsEvent são:

Evento

Descrição

moving

Despachado imediatamente depois que o canto superior esquerdo da janela muda de posição, seja como resultado da movimentação, do redimensionamento ou da alteração do estado de exibição da janela.

move

Despachado depois que a posição do canto superior esquerdo é alterada.

resizing

Despachado imediatamente antes de a largura ou a altura da janela ser alterada, seja como resultado do redimensionamento ou de uma alteração no estado de exibição.

resize

Despachado após uma alteração no tamanho da janela.

Para eventos NativeWindowBoundsEvent, você pode usar as propriedades beforeBounds e afterBounds para determinar os limites da janela antes e depois da alteração iminente ou concluída.

Os eventos de janela que despacham um objeto NativeWindowDisplayStateEvent são:

Evento

Descrição

displayStateChanging

Despachado imediatamente antes de uma alteração no estado de exibição da janela.

displayStateChange

Despachado depois que o estado de exibição da janela foi alterado.

Para eventos NativeWindowDisplayStateEvent , você pode usar as propriedades beforeDisplayState e afterDisplayState para determinar o estado de exibição da janela antes e depois da alteração iminente ou concluída.

Em alguns gerenciadores de janela do Linux, um evento de alteração do estado de exibição não é despachado quando uma janela com uma configuração de tamanho máximo é maximizada. (A janela é definida como estado de exibição máximo, mas não é redimensionada).