Java:系统托盘中的Outlook类型通知
问题描述:
我正在创建一个在系统托盘中显示Outlook类型警报的后台实用程序。 我已经能够通过使用“java.awt.TrayIcon”和“java.awt.SysTray”来实现这一点。 现在我想扩展它以在系统托盘中显示一个未经检查的通知图标,就像您在Outlook中收到一封电子邮件一样,并且如果您没有检查它,那么邮件图标在那里显示。Java:系统托盘中的Outlook类型通知
有没有办法在java中实现这一点?
答
以下代码在系统托盘上创建一个图标。
class Test {
Image i;
public void popNotification(){
i = Toolkit.getDefaultToolkit().getImage("C:\\My Documents\\icon.jpg");
SystemTray st = SystemTray.getSystemTray();
TrayIcon trayIcon = new TrayIcon(i, "You've got an unread message.");
try {
st.add(trayIcon);
} catch (AWTException e) {
e.printStackTrace();
}
}
}
public class TestTrayIcon {
public static void main(String[] args){
Test test = new Test();
test.popNotification();
}
}
您还可以将一个eventListener添加到trayIcon,以便在点击它时最大化应用程序窗口,就像outlook一样。代码如下:http://docs.oracle.com/javase/6/docs/api/java/awt/SystemTray.html
+0
这不会为我工作。我将不得不围绕它编写大量代码来管理未读项目。所以阅读物品后必须消失,多个警报必须保持在相同的图标。它会有很多编码。我正在寻找一些图书馆为我做这件事。 – Lokesh 2013-02-19 12:39:44
如果我明白你在问什么,[TrayIcon.setImage](http://docs.oracle.com/javase/7/docs/api/java/awt/TrayIcon.html# setImage%28java.awt.Image%29)应该这样做。 – VGR 2013-02-19 12:38:50
TrayIcon.setImage只是它的一小部分。我正在寻找像功能和一些图书馆这样的前景为我。 – Lokesh 2013-02-19 12:41:35
您是否在寻找监控电子邮件收件箱的内容?如果是这样,我会建议[JavaMail](http://www.oracle.com/technetwork/java/javamail/)。 – VGR 2013-02-19 12:51:52