当前所在位置:珠峰网资料 >> 计算机 >> 计算机等级考试 >> 正文
计算机二级考试指导:Java使窗口最小化为图标
发布时间:2010/3/24 16:30:18 来源:城市学习网 编辑:admin

  Java使窗口最小化为图标
  最小化时隐藏,在图标上点右右键选择显示窗口时,让窗口显示出来
  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