java 提醒小工具_java – 如何捕获trayicon.displayMessage()鼠标点击工具提示音

1)可以通过将ActionListener添加到TrayIcon来监听MouseClickEvents,然后通过消息身体监听MouseClicked

2)(不直接询问),但是如果消息被关闭按钮关闭,我不能给你一个答案,而消息从屏幕上相同的方式离开,但没有捕获任何事件

import java.awt.*;

import java.awt.event.*;

public class FullTray {

private static class ShowMessageListener implements ActionListener {

private TrayIcon trayIcon;

private String title;

private String message;

private TrayIcon.MessageType messageType;

ShowMessageListener(TrayIcon trayIcon,String title,String message,TrayIcon.MessageType messageType) {

this.trayIcon = trayIcon;

this.title = title;

this.message = message;

this.messageType = messageType;

}

public void actionPerformed(ActionEvent e) {

trayIcon.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

System.out.println("Message Clicked");

}

});

trayIcon.displayMessage(title,message,messageType);

}

}

public static void main(String args[]) {

Runnable runner = new Runnable() {

public void run() {

if (SystemTray.isSupported()) {

final SystemTray tray = SystemTray.getSystemTray();

Image image = Toolkit.getDefaultToolkit().getImage("gifIcon.gif");

PopupMenu popup = new PopupMenu();

final TrayIcon trayIcon = new TrayIcon(image,"The Tip Text",popup);

MenuItem item = new MenuItem("Error");

item.addActionListener(new ShowMessageListener(trayIcon,"Error Title","Error",TrayIcon.MessageType.ERROR));

popup.add(item);

item = new MenuItem("Warning");

item.addActionListener(new ShowMessageListener(trayIcon,"Warning Title","Warning",TrayIcon.MessageType.WARNING));

popup.add(item);

item = new MenuItem("Info");

item.addActionListener(new ShowMessageListener(trayIcon,"Info Title","Info",TrayIcon.MessageType.INFO));

popup.add(item);

item = new MenuItem("None");

item.addActionListener(new ShowMessageListener(trayIcon,"None Title","None",TrayIcon.MessageType.NONE));

popup.add(item);

item = new MenuItem("Close");

item.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

tray.remove(trayIcon);

}

});

popup.add(item);

try {

tray.add(trayIcon);

} catch (AWTException e) {

System.err.println("Can't add to tray");

}

} else {

System.err.println("Tray unavailable");

}

}

};

EventQueue.invokeLater(runner);

}

private FullTray() {

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值