ウィンドウによって送出されるイベントをリッスンするには、リスナーをウィンドウのインスタンスに登録します。例えば、closing イベントをリッスンするには、次のようにリスナーをウィンドウに登録します。
window.nativeWindow.addEventListener(air.Event.CLOSING, onClosingEvent);
イベントが送出されると、
target
プロパティはイベントを送信したウィンドウを示します。
ほとんどのウィンドウイベントには、2 つの関連メッセージがあります。第 1 のメッセージはウィンドウの変更が行われようとしていること(およびキャンセルできること)を通知し、第 2 のメッセージは変更が行われたことを通知します。例えば、ユーザーがウィンドウの閉じるボタンをクリックすると、closing イベントのメッセージが送出されます。リスナーがイベントをキャンセルしないと、ウィンドウが閉じ、close イベントがリスナーに送出されます。
通常、
closing
などの警告イベントは、システムクロムを使用してイベントがトリガーされた場合にのみ送出されます。例えばウィンドウの
close()
メソッドなどを呼び出しても、
closing
イベントは自動的には送出されず、
close
イベントのみが送出されます。ただし、closing イベントオブジェクトを作成し、ウィンドウの
dispatchEvent()
メソッドを使用して送出することはできます。
Event オブジェクトを送出するウィンドウイベントは次のとおりです。
イベント
|
説明
|
activate
|
ウィンドウがフォーカスを受け取ると送出されます。
|
deactivate
|
ウィンドウがフォーカスを失うと送出されます。
|
closing
|
ウィンドウが閉じられようとするときに送出されます。このイベントが自動的に発生するのは、システムクロムの閉じるボタンが押されたとき、または Mac OS X で Quit コマンドが呼び出されたときのみです。
|
close
|
ウィンドウが閉じると送出されます。
|
NativeWindowBoundsEvent オブジェクトを送出するウィンドウイベントは次のとおりです。
イベント
|
説明
|
moving
|
移動、サイズ変更またはウィンドウ表示状態の変更の結果として、ウィンドウの左上隅の位置が変更される直前に送出されます。
|
move
|
左上隅の位置が変更された後で送出されます。
|
resizing
|
サイズ変更または表示状態変更の結果としてウィンドウの幅または高さが変更される直前に送出されます。
|
resize
|
ウィンドウのサイズが変更された後で送出されます。
|
NativeWindowBoundsEvent イベントの場合は、
beforeBounds
および
afterBounds
プロパティを使用して、変更の直前と直後のウィンドウ境界を取得できます。
NativeWindowDisplayStateEvent オブジェクトを送出するウィンドウイベントは次のとおりです。
イベント
|
説明
|
displayStateChanging
|
ウィンドウの表示状態が変更される直前に送出されます。
|
displayStateChange
|
ウィンドウの表示状態が変更された後で送出されます。
|
NativeWindowDisplayStateEvent イベントの場合は、
beforeDisplayState
および
afterDisplayState
プロパティを使用して、変更の直前と直後のウィンドウの表示状態を取得できます。
一部の Linux ウィンドウマネージャーでは、最大サイズが設定されているウィンドウを最大化しても、表示状態変更イベントは送出されません(ウィンドウは最大表示状態に設定されますが、サイズは変更されません)。