ウィンドウのタスクバーのアイコンとボタン



ウィンドウを表すアイコンは、通常はタスクバーまたはドックのウィンドウ領域に表示されます。ユーザはこれらを使用して、バックグラウンドで実行されているウィンドウや最小化されているウィンドウに簡単にアクセスすることができます。Mac OS X のドックには、アプリケーションのアイコンと最小化された各ウィンドウのアイコンが表示されます。Microsoft Windows および Linux では、アプリケーションで表示する通常種類の各ウィンドウを表すボタンがタスクバーに表示され、各ボタンにプログラムアイコンとタイトルが表示されます。

タスクバーのウィンドウボタンの強調表示

ウィンドウがバックグラウンドで実行されているときに、ウィンドウに関連するイベントが発生したことをユーザに通知することができます。Mac OS X では、アプリケーションドックアイコンをバウンスさせてユーザに通知できます(ドックのバウンスの説明を参照)。Windows および Linux では、NativeWindow インスタンスの notifyUser() メソッドを呼び出すと、そのウィンドウに対応するタスクバーボタンが強調表示されます。メソッドに渡される type パラメータによって、通知の緊急度が決まります。

  • NotificationType.CRITICAL:ユーザがウィンドウを前面に表示するまでウィンドウアイコンが点滅します。

  • NotificationType.INFORMATIONAL:別の色でウィンドウアイコンが強調表示されます。

    注意: Linux では、サポートされている通知の種類は INFORMATIONAL のみです。notifyUser() 関数にどの type 値を渡しても同じ効果になります。

    次のステートメントでは、ウィンドウのタスクバーボタンを強調表示します。

    stage.nativeWindow.notifyUser(NotificationType.CRITICAL); 

    ウィンドウレベルの通知がサポートされていないオペレーティングシステムでは、NativeWindow.notifyUser() メソッドを呼び出しても効果はありません。ウィンドウの通知がサポートされているかどうかを確認するには、NativeWindow.supportsNotification プロパティを使用します。

タスクバーのボタンまたはアイコンがないウィンドウの作成

Windows オペレーティングシステムでは、utility または lightweight のタイプで作成されたウィンドウはタスクバーに表示されません。また、不可視のウィンドウもタスクバーに表示されません。

初期ウィンドウのタイプは必ず normal であるため、ウィンドウがタスクバーに表示されないアプリケーションを作成するには、初期ウィンドウを閉じるか、不可視のままにしておく必要があります。アプリケーションを終了しないでアプリケーションのすべてのウィンドウを閉じるには、最後のウィンドウを閉じる前に、NativeApplication オブジェクトの autoExit プロパティを false に設定します。単に初期ウィンドウが可視にならないようにするには、<visible>false</visible> をアプリケーション記述ファイルの <initalWindow> エレメントに追加します(さらに、visible プロパティを true に設定したり、ウィンドウの activate() メソッドを呼び出したりしないようにします)。

アプリケーションで開かれる新しいウィンドウでは、ウィンドウコンストラクタに渡される NativeWindowInitOption オブジェクトの type プロパティを NativeWindowType.UTILITY または NativeWindowType.LIGHTWEIGHT に設定します。

Mac OS X では、最小化されたウィンドウはドックタスクバーに表示されます。最小化されたアイコンが表示されないようにするには、ウィンドウを最小化するのではなく非表示にします。次の例では、nativeWindowDisplayState 変更イベントをリッスンし、ウィンドウが最小化される場合にキャンセルします。その代わりに、ハンドラでウィンドウの visible プロパティを false に設定します。

private function preventMinimize(event:NativeWindowDisplayStateEvent):void{ 
    if(event.afterDisplayState == NativeWindowDisplayState.MINIMIZED){ 
        event.preventDefault(); 
        event.target.visible = false; 
    } 
} 

visible プロパティを false に設定している場合に Mac OS X ドックでウィンドウが最小化されても、ドックアイコンが削除されるわけではありません。ユーザは、引き続きアイコンをクリックしてウィンドウを再表示することができます。