欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java實現(xiàn)把窗體隱藏到系統(tǒng)托盤方法

 更新時間:2015年05月20日 10:37:29   投稿:junjie  
這篇文章主要介紹了Java實現(xiàn)把窗體隱藏到系統(tǒng)托盤方法,本文直接給出核心功能代碼,需要的朋友可以參考下

系統(tǒng)托盤也就是桌面右下角的圖標。。
此程序?qū)崿F(xiàn)的功能是點擊窗體關(guān)閉按鈕不退出程序,而是隱藏到系統(tǒng)托盤里面。
實質(zhì)上也只是把窗體不可見了。。。

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);// 把窗體設(shè)置在屏幕中間

 systemTray(); // 設(shè)置系統(tǒng)托盤

 // 添加關(guān)閉按鈕事件,關(guān)閉時候?qū)嵸|(zhì)是把窗體隱藏
 this.addWindowListener(new WindowAdapter() {
  @Override
  public void windowClosing(WindowEvent e) {
  TestTray.this.setVisible(false);
  }
 });
 this.setVisible(true);
 }

 /**
 * 處理系統(tǒng)托盤
 */
 private void systemTray() {
 if (SystemTray.isSupported()) { // 判斷系統(tǒng)是否支持托盤功能.
  // 創(chuàng)建托盤右擊彈出菜單
  PopupMenu popupMenu = new PopupMenu();
  
  //創(chuàng)建彈出菜單中的退出項
  MenuItem itemExit = new MenuItem("退出系統(tǒng)");
  itemExit.addActionListener(new ActionListener() {
   @Override
   public void actionPerformed(ActionEvent e) {
    System.exit(0);
   }
   });
  popupMenu.add(itemExit);
  
  //創(chuàng)建托盤圖標
  ImageIcon icon = new ImageIcon("img/icon.png"); // 創(chuàng)建圖片對象
  TrayIcon trayIcon = new TrayIcon(icon.getImage(), "測試系統(tǒng)托盤",
   popupMenu);
  trayIcon.addActionListener(new ActionListener() {
  @Override
  public void actionPerformed(ActionEvent e) {
   TestTray.this.setVisible(true);
  }
  });
  
  //把托盤圖標添加到系統(tǒng)托盤
  //這個可以點擊關(guān)閉之后再放到托盤里面,在此是打開程序直接顯示托盤圖標了
  try {
  SystemTray.getSystemTray().add(trayIcon);
  } catch (AWTException e1) {
  e1.printStackTrace();
  }
 }
 }

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

相關(guān)文章

  • Spring Boot啟動過程完全解析(一)

    Spring Boot啟動過程完全解析(一)

    這篇文章主要介紹了Spring Boot啟動過程完全解析(一),需要的朋友可以參考下
    2017-04-04
  • java基礎(chǔ)詳解之數(shù)據(jù)類型知識點總結(jié)

    java基礎(chǔ)詳解之數(shù)據(jù)類型知識點總結(jié)

    這篇文章主要介紹了java基礎(chǔ)詳解之數(shù)據(jù)類型知識點總結(jié),文中有非常詳細的代碼示例,對正在學(xué)習(xí)java基礎(chǔ)的小伙伴們有很大的幫助,需要的朋友可以參考下
    2021-04-04
  • Java中使用Jedis操作Redis的示例代碼

    Java中使用Jedis操作Redis的示例代碼

    本篇文章主要介紹了Java中使用Jedis操作Redis的示例代碼,具有一定的參考價值,有興趣的可以了解一下。
    2016-12-12
  • 在JSP頁面內(nèi)編寫java代碼方法總結(jié)

    在JSP頁面內(nèi)編寫java代碼方法總結(jié)

    在本篇文章里小編給大家分享了關(guān)于在JSP頁面內(nèi)編寫java代碼方法和步驟,有需要的朋友們學(xué)習(xí)下。
    2019-01-01
  • Java基礎(chǔ)必學(xué)TreeSet集合

    Java基礎(chǔ)必學(xué)TreeSet集合

    這篇文章主要介紹了Java必學(xué)基礎(chǔ)TreeSet集合,TreeSet集合實現(xiàn)了SortedSet接口,?可以對集合中元素進行自然排序,?要求集合中的元素必須是可比較的。下文詳細介紹需要的朋友可以參考一下
    2022-04-04
  • Java?詳細講解線程的狀態(tài)及部分常用方法

    Java?詳細講解線程的狀態(tài)及部分常用方法

    在Java程序中,一個線程對象只能調(diào)用一次start()方法啟動新線程,并在新線程中執(zhí)行run()方法。一旦run()方法執(zhí)行完畢,線程就結(jié)束了,本篇來講解Java線程的狀態(tài)以及部分常用方法
    2022-04-04
  • Java中的forEach循環(huán)詳細解讀

    Java中的forEach循環(huán)詳細解讀

    這篇文章主要介紹了Java中的forEach循環(huán)詳細解讀,不要再foreach循環(huán)里面進行元素的add和remove,如果你非要進行remove元素,那么請使用Iterator方式,如果存在并發(fā),那么你一定要選擇加鎖,需要的朋友可以參考下
    2023-12-12
  • Java代碼注釋規(guī)范(動力節(jié)點整理)

    Java代碼注釋規(guī)范(動力節(jié)點整理)

    代碼注釋是架起程序設(shè)計者與程序閱讀者之間的通信橋梁,最大限度的提高團隊開發(fā)合作效率。也是程序代碼可維護性的重要環(huán)節(jié)之一。下面通過本文說一下我們在日常開發(fā)中使用的代碼注釋規(guī)范
    2017-03-03
  • spring?boot集成p6spy的最佳實踐

    spring?boot集成p6spy的最佳實踐

    這篇文章主要介紹了spring?boot集成p6spy的最佳實踐-p6spy-spring-boot-starter的項目案例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-02-02
  • 使用eclipse + maven一步步搭建SSM框架教程詳解

    使用eclipse + maven一步步搭建SSM框架教程詳解

    SSM(Spring+SpringMVC+MyBatis)框架集由Spring、SpringMVC、MyBatis三個開源框架整合而成,常作為數(shù)據(jù)源較簡單的web項目的框架.這篇文章主要介紹了eclipse + maven搭建SSM框架 ,需要的朋友可以參考下
    2017-11-11

最新評論