当前所在位置:珠峰网资料 >> 计算机 >> 计算机等级考试 >> 正文
Java技巧:Java使窗口最小化为图标
发布时间:2009/12/23 20:55:35 来源:城市学习网 编辑:海蓝

  最小化时隐藏,在图标上点右右键选择显示窗口时,让窗口显示出来

  import java.awt.AWTException;

  import java.awt.Image;

  import java.awt.MenuItem;

  import java.awt.SystemTray;

  import java.awt.Toolkit;

  import java.awt.TrayIcon;

  import java.awt.event.ActionEvent;

  import java.awt.event.ActionListener;

  import java.awt.image.BufferedImage;

  import java.io.File;

  import java.io.IOException;

  import javax.imageio.ImageIO;

  public class SystemTrayTest extends Thread {

  TrayIcon st;

  SystemTray tray =null;

  //javax.swing.Popup p;

  java.awt.PopupMenu popup;

  MenuItem mi1,mi2;

  msgbox m=null;

  public void getm(msgbox m){

  this.m=m;

  }

  public void run() {

  // TODO Auto-generated method stub

  super.run();

  if (SystemTray.isSupported()) {

  // get the SystemTray instance

  tray = SystemTray.getSystemTray();

  // load an image

  String test = System.getProperty("user.dir").replace('\\', '/');

  BufferedImage src = null;

  try {

  src = ImageIO.read(new File(test + "\\logo.jpg"));

  } catch (IOException e) {

  // TODO Auto-generated catch block

  e.printStackTrace();

  } // 读入源图像

  //

  Image image = Toolkit.getDefaultToolkit().getImage(test + "\\logo.jpg");

  // create a action listener to listen for default action executed on

  // the tray icon

  popup=new java.awt.PopupMenu();

  mi1=new MenuItem("显示窗口");

  mi2=new MenuItem("---");

  popup.add(mi1);

  popup.add(mi2);

  mi1.addActionListener(new ActionListener(){

  public void actionPerformed(ActionEvent e) {

  // TODO Auto-generated method stub

  m.setVisible(true);

  System.out.println("open");

  }

  })

  mi2.addActionListener(new ActionListener(){

  public void actionPerformed(ActionEvent e) {

  // TODO Auto-generated method stub

  //System.out.println("close");

  //System.exit(0);

  }

  });

  st = new TrayIcon(image, "Tray Demo", popup);

  try {

  tray.add(st);

  } catch (AWTException e) {

  e.printStackTrace();

  }

  }

  }

  public static void main(String[] args) {

  new SystemTrayTest().start();

  }

  }

  //使窗口最小化,并隐藏

  public void windowIconified(WindowEvent e) {

  System.out.print("sssssss");

  jf.setVisible(false);

  System.out.print(""+e+" "+e.getClass()+" "+e.getNewState());

  }

广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved