import java.awt.AWTException;
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 javax.swing.ImageIcon;
import javax.swing.JOptionPane;
public class MainView implements ActionListener
{
private TrayIcon trayIcon;
private SystemTray tray;
private PopupMenu popup;
private MenuItem DecideItem;
private MenuItem ExitItem;
public MainView() throws AWTException
{
if(SystemTray.isSupported()) // 判断系统是否支持系统托盘
{
tray = SystemTray.getSystemTray(); // 创建系统托盘
Image image = new ImageIcon("icon.gif").getImage();
//Image image = Toolkit.getDefaultToolkit().getImage("icon.gif");// 载入图片
popup = new PopupMenu();
DecideItem = new MenuItem("设置时间");
DecideItem.addActionListener(this);
ExitItem = new MenuItem("退出程序");
ExitItem.addActionListener(this);
popup.add(DecideItem);
popup.addSeparator();
popup.add(ExitItem);
trayIcon = new TrayIcon(image,"这是黄旭的关机程序", popup);// 创建trayIco
tray.add(trayIcon);
JOptionPane.showMessageDialog(null, "请在任务栏中设定关机时间");
}
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==DecideItem)
{
@SuppressWarnings("unused")
ChangeTime ct = new ChangeTime("设定时间");
}
else if(e.getSource()==ExitItem)
{
System.exit(0);
}
}
public static void main(String argv[]) throws AWTException
{
MainView view = new MainView();
}
}
我用的MyEclipse,在我的电脑上运行,托盘图标显示正常,在别人的电脑上就不行