Newer
Older
stockTray / StockTray_old / src / Tray.java
ubt on 25 May 2018 2 KB stock new
import java.awt.Image;
import java.awt.MenuItem;
import java.awt.PopupMenu;
import java.awt.SystemTray;
import java.awt.TrayIcon;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;

import javax.swing.ImageIcon;

public class Tray implements ActionListener {
	String code;
	TrayIcon trayIcon1, trayIcon2;
	SystemTray tray1, tray2;
	
	public static Thread startThread ;

	public Tray() throws Exception {
		//判断系统是否支持System Tray
		if (!SystemTray.isSupported()) {
			System.out.println("System Tray is not supported");
			return;
		} else {
			//菜单初始化
			MenuItem exitItem1 = new MenuItem("Exit");
			MenuItem configItem1 = new MenuItem("Config");
			exitItem1.addActionListener(this);
			configItem1.addActionListener(this);
			exitItem1.setActionCommand("Exit");
			configItem1.setActionCommand("Config");
			
			MenuItem exitItem2 = new MenuItem("Exit");
			MenuItem configItem2 = new MenuItem("Config");
			exitItem2.addActionListener(this);
			configItem2.addActionListener(this);
			exitItem2.setActionCommand("Exit");
			configItem2.setActionCommand("Config");

			PopupMenu popupMenu1 = new PopupMenu();
			PopupMenu popupMenu2 = new PopupMenu();
			popupMenu1.add(configItem1);
			popupMenu1.add(exitItem1);
			popupMenu2.add(configItem2);
			popupMenu2.add(exitItem2);

			String currentDir = System.getProperty("user.dir");
			Image image = new ImageIcon(currentDir + "\\src\bg.png").getImage();

			//系统托盘初始化
			trayIcon1 = new TrayIcon(image, null, popupMenu1);
			trayIcon1.setImageAutoSize(true);
			tray1 = SystemTray.getSystemTray();
			tray1.add(trayIcon1);

			trayIcon2 = new TrayIcon(image, null, popupMenu2);
			trayIcon2.setImageAutoSize(true);
			tray2 = SystemTray.getSystemTray();
			tray2.add(trayIcon2);

			//执行任务 
			startStock();
		}

	}

	@Override
	public void actionPerformed(ActionEvent e) {
		//菜单响应
		String action = e.getActionCommand();

		if (action.equals("Exit")) {
			System.exit(0);
		}

		if (action.equals("Config")) {
			//打开配置面板
			ConfigGui config = new ConfigGui();
			config.setVisible(true);
		}
	}
	
	

	public void startStock() throws Exception {
		startThread = new Thread(new TrayUpdate(trayIcon1, trayIcon2));
		startThread.start();
	}

	public static void main(String[] args) throws Exception {
		new Tray();
	}
}