モジュール java.desktop
パッケージ java.awt

クラスSystemTray

java.lang.Object
java.awt.SystemTray

public class SystemTray extends Object
SystemTrayクラスは、デスクトップのシステム・トレイを表します。 Microsoft Windowsでは、「タスク・バーのステータス領域」、Gnomeでは「通知スペース」、KDEでは「システム・トレイ」と呼ばれます。 システム・トレイは、デスクトップで実行しているすべてのアプリケーションで共有されます。

一部のプラットフォームでは、システム・トレイが存在しなかったり、サポートされていなかったりすることがあります。この場合、getSystemTray()UnsupportedOperationExceptionをスローします。 システム・トレイがサポートされているかどうかを検出するには、isSupported()を使用します。

SystemTrayには、1つ以上のTrayIconsを格納できます。TrayIconは、add(java.awt.TrayIcon)メソッドを使用してトレイに追加し、不要になったらremove(java.awt.TrayIcon)メソッドを使用して削除します。 TrayIconは、イメージ、ポップアップ・メニューおよび関連するリスナーのセットで構成されます。 詳細は、TrayIconクラスを参照してください。

各Javaアプリケーションには、SystemTrayインスタンスが1つあり、アプリケーションは実行中にデスクトップのシステム・トレイとやり取りすることができます。 SystemTrayインスタンスは、getSystemTray()メソッドで取得できます。 アプリケーションは、SystemTrayのインスタンスを独自に作成できない場合があります。

次のコード部分は、システム・トレイにアクセスしてカスタマイズする方法を示しています。

 
     TrayIcon trayIcon = null;
     if (SystemTray.isSupported()) {
         // get the SystemTray instance
         SystemTray tray = SystemTray.getSystemTray();
         // load an image
         Image image = Toolkit.getDefaultToolkit().getImage(...);
         // create a action listener to listen for default action executed on the tray icon
         ActionListener listener = new ActionListener() {
             public void actionPerformed(ActionEvent e) {
                 // execute default action of the application
                 // ...
             }
         };
         // create a popup menu
         PopupMenu popup = new PopupMenu();
         // create menu item for the default action
         MenuItem defaultItem = new MenuItem(...);
         defaultItem.addActionListener(listener);
         popup.add(defaultItem);
         /// ... add other items
         // construct a TrayIcon
         trayIcon = new TrayIcon(image, "Tray Demo", popup);
         // set the TrayIcon properties
         trayIcon.addActionListener(listener);
         // ...
         // add the tray image
         try {
             tray.add(trayIcon);
         } catch (AWTException e) {
             System.err.println(e);
         }
         // ...
     } else {
         // disable tray option in your application or
         // perform other actions
         ...
     }
     // ...
     // some time later
     // the application state has changed - update the image
     if (trayIcon != null) {
         trayIcon.setImage(updatedImage);
     }
     // ...
 
 

導入されたバージョン:
1.6
関連項目: