使用Java实现系统托盘功能的介绍(附源码以及截图)

Java中如何,实现系统托盘功能.

示例图

项目包结构图

系统运行截图

应用核心逻辑说明,隐藏到托盘实质就是讲窗体隐藏.即setVisible(false),显示窗体即就是讲setVisible(true).

项目代码如下:

代码如下:
package org.pdp.frame; import java.awt.AWTException; 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 java.net.URL; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JMenuItem;  public class MainFrame extends JFrame implements ActionListener{     private static final long serialVersionUID = -7078030311369039390L;     private JMenu menu;     private JMenuBar jmenuBar;     private String [] jmItemName = {"置于托盘","系统退出"};     public MainFrame(){         super("电话薄");         init();         this.setSize(500,400);         this.setJMenuBar(jmenuBar);         this.setLocationRelativeTo(null);         systemTray();    //系统托盘     }     /**      * 初始化界面      */     public void init(){         menu = new JMenu("系统窗体");         for(int i=0; i<jmItemName.length; i++){             JMenuItem menuItem = new JMenuItem(jmItemName[i]);             menuItem.addActionListener(this);             menu.add(menuItem);         }         this.jmenuBar = new JMenuBar();         this.jmenuBar.add(menu);     }     @Override     public void actionPerformed(ActionEvent e) {         String actions = e.getActionCommand();         if("置于托盘".equals(actions)){             this.setVisible(false);         }         if("系统退出".equals(actions)){             System.exit(0);         }     }     /**系统托盘图标处理.*/     private void  systemTray(){         if(SystemTray.isSupported()){    //判断系统是否支持托盘功能.             URL resource = this.getClass().getResource("systray.jpg");    //获得图片路径             ImageIcon icon = new ImageIcon(resource); //创建图片对象             PopupMenu popupMenu = new PopupMenu(); //创建弹出菜单对象             MenuItem itemExit = new MenuItem("退出系统");    //创建弹出菜单中的退出项             MenuItem itemShow = new MenuItem("显示窗体"); //创建弹出菜单中的显示主窗体项.             itemExit.addActionListener(new ActionListener() {     //给退出像添加事件监听                 @Override                 public void actionPerformed(ActionEvent e) {                     System.exit(0);                 }                         });             itemShow.addActionListener(new ActionListener() { //给窗体最小化添加事件监听.                 @Override                 public void actionPerformed(ActionEvent e) {                     setVisible(true);                 }             });             popupMenu.add(itemExit);             popupMenu.add(itemShow);             TrayIcon trayIcon = new TrayIcon(icon.getImage(),"电话薄系统",popupMenu);             SystemTray sysTray = SystemTray.getSystemTray();             try {                 sysTray.add(trayIcon);             } catch (AWTException e1) {    }         }     }     /**      * 主方法      * @param args      */     public static void main(String[] args) {         new MainFrame().setVisible(true);     } }

以上是 使用Java实现系统托盘功能的介绍(附源码以及截图) 的全部内容, 来源链接: utcz.com/p/206991.html

回到顶部