
Apollo改めAIRプログラミング入門(4)
AIRの新機能、電子署名とシステムトレイの利用方法
クラスメソッド株式会社
杉浦篤史
2007/11/13
 システムトレイにアイコンを表示するには?
 システムトレイにアイコンを表示するには?
前述のとおり、ベータ2からシステムトレイにアイコンを表示できるようになりました。
これにより、システムトレイにアプリケーションの状態を示したり、システムトレイアイコンからメニューを開いてアプリケーションの操作を行ったりすることができるようになります(*注意:システムトレイアイコン表示については、Windowsのみの対応機能です。ほぼ同じような方法でMac OSXのDockIconへのアイコン表示も行えるようですが、今回は解説しません。ご了承ください)。
以下にその作例を示します。実行結果は図6・図7となります。
| <?xml version="1.0" encoding="utf-8"?> | 
|  | 
| 図6 アプリには何も要素はない | 
|  | 
| 図7 タスクトレイにアイコンが表示される(一番左のアイコン) | 
以下、順に解説していきます。
■ システムトレイが利用できるかの判定
まず、システムトレイアイコンの表示を行う前に以下の構文を使ってシステムがアイコン表示に対応しているか判定します。
| if (Shell.supportsSystemTrayIcon) { | 
ShellのsupportsSystemTrayIconを判定することでシステムがシステムトレイアイコンの表示に対応しているか調べることができます。これを行うことで、利用できないシステムでアイコンを設定してしまうことがなくなります。
■ アイコンの準備
アイコンはBitmapDataであればよいのですが、16×16のサイズのものをあらかじめ用意しておくのがよいでしょう。
表示させるアイコンは、以下のようにして[Embed]メタデータタグを使用して、埋め込みイメージを変数に関連付けておきます。
| [Embed(source="assets/icons/AIRApp_16.png")] | 
■ SystemTrayIconクラスを使用する
システムトレイアイコンを表示するにはSystemTrayIconクラスを使用します。
| 表 今回使用するSystemTrayIconクラスのメソッド/プロパティ | ||||||||
| 
 | 
SystemTrayIconは以下のような形でインスタンスにすることはできません。
| var icon:SystemTrayIcon = new SystemTrayIcon(); | 
そのため、SystemTrayIconを利用するには以下のようにします。
| systemTrayIcon = Shell.shell.icon as SystemTrayIcon; | 
■ アイコンを設定
bitmapsにアイコンとして表示するBitmapDataを配列で渡します。今回の作例では複数サイズに対応する必要はないので配列には1つしか入れていません。ここまで行うと、システムトレイにアイコンが表示されます。
| iconBitmap = (new icon16() as BitmapAsset).bitmapData; | 
さらに次ページでは、システムトレイでtooltipやメニューを表示し、アイコンをアニメーションさせる方法について解説します。
|  | 1-2-3 |  | 
| INDEX | ||
| Apollo改めAIRプログラミング入門(4) | ||
| Page1 Adobe AIRのベータ2版が公開! AIR ベータ2からの変更点を押さえておこう | ||
|  | Page2 システムトレイにアイコンを表示するには? | |
| Page3 システムトレイアイコンのtooltipとメニューを表示 アイコンをアニメーションさせて分かりやすくする システムトレイを活用して使い勝手を向上させる | ||
- GASで棒、円、折れ線など各種グラフを作成、変更、削除するための基本 (2017/7/12)
 資料を作る際に、「グラフ」は必要不可欠な存在だ。今回は、「グラフの新規作成」「グラフの変更」「グラフの削除」について解説する
- GET/POSTでフォームから送信された値をPHPで受け取る「定義済みの変数」【更新】 (2017/7/10)
 HTMLのフォーム機能についておさらいし、get/postメソッドなどの内容を連想配列で格納するPHPの「定義済みの変数」の中身や、フォーム送信値の取り扱いにおける注意点について解説します【PHP 7.1含め2017年の情報に合うように更新】
- PHPのfor文&ループ脱出のbreak/スキップのcontinue【更新】 (2017/6/26)
 素数判定のロジックからbreak文やcontinue文の利点と使い方を解説。for文を使ったループ処理の基本とwhile文との違い、無限ループなども併せて紹介します【PHP 7.1含め2017年の情報に合うように更新】
- Spreadsheetデータの選択、削除、挿入、コピー、移動、ソート (2017/6/12)
 Spreadsheetデータの選択、挿入、削除、コピー、移動、ソートに使うメソッドの使い方などを解説する
|  | |
| 
 | |
|  | 

 







