您的位置:首页 > 编程语言 > Java开发

Java Swing控件桌面程序 显示托盘图标

2014-12-10 13:02 357 查看
给Swing程序添加系统图标需要用到两个主要的类:SystemTrayTrayIcon

SystemTray 通常用于判断系统是否支持托盘图标和添加系统图标功能;
TrayIcon 用来创建一个图标,然后需要使用SystemTray将add进去;在图标上可以添加PopupMenu和MenuItem,构成功能菜
package s;
import java.awt.AWTException;
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 java.time.Clock;
public class a {
public static void main(String[] args) {
if(SystemTray.isSupported()){//判断系统是否托盘
//创建一个托盘图标对象
TrayIcon icon =
new TrayIcon(Toolkit.getDefaultToolkit().getImage(Clock.class.getResource("/images/21.png")));

//创建弹出菜单
PopupMenu menu = new PopupMenu();
//添加一个用于退出的按钮
MenuItem item = new MenuItem("退出");
item.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
menu.add(item);
//添加弹出菜单到托盘图标
icon.setPopupMenu(menu);
SystemTray tray = SystemTray.getSystemTray();//获取系统托盘
try {
tray.add(icon);
} catch (AWTException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}//将托盘图表添加到系统托盘
}
}
}


注意:
1、TrayIcon icon = new TrayIcon(Toolkit.getDefaultToolkit().getImage(Clock.class.getResource("/images/21.png")));
这句话,是用来创建一个icon,还可以加参数,比如
trayIcon = new TrayIcon(Toolkit.getDefaultToolkit().getImage(Clock.class.getResource("/images/21.png")), "seara", popup);// 创建trayIcon

中间的参数是显示托盘名称的。
2、这里的图片路径非常容易出错。注意操作步骤,要现在项目里新建一个resources文件夹,然后使用buildpath将这个文件加入到resouce;在resources文件夹下,建立images文件夹,将图片文件放入其中。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: