天天看點

系統托盤支援

1.程式代碼:

package com.lsh;

import java.awt.AWTException;
import java.awt.Image;
import java.awt.MenuItem;
import java.awt.PopupMenu;
import java.awt.SystemTray;
import java.awt.Toolkit;
import java.awt.TrayIcon;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JOptionPane;
import javax.swing.SwingUtilities;

public class test1

    public static void main(String[] args) {

        SwingUtilities.invokeLater(new Runnable() {
            @Override
            public void run() {
                // TODO Auto-generated method stub
                constructGUI();
            }
        });
    }

    private static void constructGUI() {
        if (!SystemTray.isSupported()) {// tray:盤,托盤,塑膠盒
            System.out.println("SystemTray is not supported!");
            return;
        }
        SystemTray tray = SystemTray.getSystemTray();
        Toolkit toolkit = Toolkit.getDefaultToolkit();
        Image image = toolkit.getImage("res/tray.jpg");// 圖檔位于src同目錄的res檔案夾下
        PopupMenu menu = new PopupMenu();
        MenuItem menuItem = new MenuItem("show Message");
        menuItem.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                // TODO Auto-generated method stub
                JOptionPane.showMessageDialog(null, "JAVA 6 - Mustang");
            }
        });
        menu.add(menuItem);
        MenuItem closeItem = new MenuItem("Close");
        closeItem.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                // TODO Auto-generated method stub
                System.exit(0);
            }
        });
        menu.add(closeItem);
        TrayIcon icon = new TrayIcon(image, "SystemTray Demo", menu);
        icon.setImageAutoSize(true);
        try {
            tray.add(icon);
        } catch (AWTException e1) {
            // TODO Auto-generated catch block
            // e1.printStackTrace();
            System.err.println("could not add tray icon to system tray!");
        }
    }
}      

2.運作效果