我有一个小控制面板,只是我制作的一个小应用程序。我想最小化/将控制面板与系统图标一起上/下,以及电池寿命、日期、网络等。
任何人都可以给我一个线索,链接到教程或阅读的东西吗?
原文由 Johannes 发布,翻译遵循 CC BY-SA 4.0 许可协议
我有一个小控制面板,只是我制作的一个小应用程序。我想最小化/将控制面板与系统图标一起上/下,以及电池寿命、日期、网络等。
任何人都可以给我一个线索,链接到教程或阅读的东西吗?
原文由 Johannes 发布,翻译遵循 CC BY-SA 4.0 许可协议
很简单
import java.awt.*;
import java.awt.event.*;
import javax.swing.JOptionPane;
public class SystemTrayDemo{
//start of main method
public static void main(String []args){
//checking for support
if(!SystemTray.isSupported()){
System.out.println("System tray is not supported !!! ");
return ;
}
//get the systemTray of the system
SystemTray systemTray = SystemTray.getSystemTray();
//get default toolkit
//Toolkit toolkit = Toolkit.getDefaultToolkit();
//get image
//Toolkit.getDefaultToolkit().getImage("src/resources/busylogo.jpg");
Image image = Toolkit.getDefaultToolkit().getImage("src/images/1.gif");
//popupmenu
PopupMenu trayPopupMenu = new PopupMenu();
//1t menuitem for popupmenu
MenuItem action = new MenuItem("Action");
action.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "Action Clicked");
}
});
trayPopupMenu.add(action);
//2nd menuitem of popupmenu
MenuItem close = new MenuItem("Close");
close.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
trayPopupMenu.add(close);
//setting tray icon
TrayIcon trayIcon = new TrayIcon(image, "SystemTray Demo", trayPopupMenu);
//adjust to default size as per system recommendation
trayIcon.setImageAutoSize(true);
try{
systemTray.add(trayIcon);
}catch(AWTException awtException){
awtException.printStackTrace();
}
System.out.println("end of main");
}//end of main
}//end of class
为图像设置适当的 路径,然后运行程序。泰 :)
原文由 Nilesh Jadav 发布,翻译遵循 CC BY-SA 3.0 许可协议
4 回答1.5k 阅读✓ 已解决
4 回答1.3k 阅读✓ 已解决
1 回答2.6k 阅读✓ 已解决
2 回答762 阅读✓ 已解决
2 回答1.8k 阅读
2 回答1.7k 阅读
2 回答1.3k 阅读
从 Java 6 开始,
SystemTray
和TrayIcon
类支持。SystemTray
在它的 Javadocs 中有一个相当广泛的例子:您还可以查看 这篇文章 或 此技术提示。