欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

Java实现把窗体隐藏到系统托盘方法

时间:2021-03-28 09:18:24|栏目:JAVA代码|点击:

系统托盘也就是桌面右下角的图标。。
此程序实现的功能是点击窗体关闭按钮不退出程序,而是隐藏到系统托盘里面。
实质上也只是把窗体不可见了。。。

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.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.ImageIcon;
import javax.swing.JFrame;

public class TestTray extends JFrame {

 private static final long serialVersionUID = -7078030311369039390L;

 public TestTray() {
 this.setSize(500, 400);

 this.setLocationRelativeTo(null);// 把窗体设置在屏幕中间

 systemTray(); // 设置系统托盘

 // 添加关闭按钮事件,关闭时候实质是把窗体隐藏
 this.addWindowListener(new WindowAdapter() {
  @Override
  public void windowClosing(WindowEvent e) {
  TestTray.this.setVisible(false);
  }
 });
 this.setVisible(true);
 }

 /**
 * 处理系统托盘
 */
 private void systemTray() {
 if (SystemTray.isSupported()) { // 判断系统是否支持托盘功能.
  // 创建托盘右击弹出菜单
  PopupMenu popupMenu = new PopupMenu();
  
  //创建弹出菜单中的退出项
  MenuItem itemExit = new MenuItem("退出系统");
  itemExit.addActionListener(new ActionListener() {
   @Override
   public void actionPerformed(ActionEvent e) {
    System.exit(0);
   }
   });
  popupMenu.add(itemExit);
  
  //创建托盘图标
  ImageIcon icon = new ImageIcon("img/icon.png"); // 创建图片对象
  TrayIcon trayIcon = new TrayIcon(icon.getImage(), "测试系统托盘",
   popupMenu);
  trayIcon.addActionListener(new ActionListener() {
  @Override
  public void actionPerformed(ActionEvent e) {
   TestTray.this.setVisible(true);
  }
  });
  
  //把托盘图标添加到系统托盘
  //这个可以点击关闭之后再放到托盘里面,在此是打开程序直接显示托盘图标了
  try {
  SystemTray.getSystemTray().add(trayIcon);
  } catch (AWTException e1) {
  e1.printStackTrace();
  }
 }
 }

 public static void main(String[] args) {
 new TestTray();
 }
}

上一篇:Java获取http和https协议返回的json数据

栏    目:JAVA代码

下一篇:SpringCloud实现SSO 单点登录的示例代码

本文标题:Java实现把窗体隐藏到系统托盘方法

本文地址:http://www.codeinn.net/misctech/89960.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有