老问题,最小化到托盘! 我还是不太会这个,怎么才能将一个gui窗口最小化到托盘呢,网上的例子太复杂看不太懂,谁有简单点的例子,最好是源码,我来学习学习,谢了!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这是一个创建托盘图标的例子,必须使用JDK1.6才可以,最小化时隐藏界面不知道怎么做import javax.swing.*;import java.awt.*;import java.awt.event.*;import system.datasync;/** *使java application生成托盘图标的例子 *本代码在JDK1.6上,Win2003平台上测试通过 *@author:NetJava.org */public class CreateTray { /**创建单实列*/ public static CreateTray instance(){ if(null==ct){ ct=new CreateTray(); } return ct; } //测试 public static void main(String[] args) { CreateTray ct =instance(); //工作目录下使用的tray图标文件 String iconFileName="netjava.gif"; PopupMenu pop=ct.createPopup(); if(!ct.CreteTrayIcon(iconFileName,"我的托盘",pop)){ System.out.println("不能创建托盘"); } } /** *创建tray,如成功返回true值 *@para trayImage:创建tray图标的图片文件名 *@para trayName:tray显示名字 *@para popup 这个tray上的PopupMenu */ public boolean CreteTrayIcon(String trayImage,String trayName,PopupMenu popup){ boolean isCreated=false; final TrayIcon trayIcon; if (SystemTray.isSupported()) { SystemTray tray = SystemTray.getSystemTray(); Image image = Toolkit.getDefaultToolkit().getImage(getClass().getResource(trayImage)); trayIcon = new TrayIcon(image, trayName, popup); trayIcon.setImageAutoSize(true); //创建一个Action监听器:左键双击事件 final ActionListener al = new ActionListener() { public void actionPerformed(ActionEvent e) { //trayIcon.displayMessage("托盘事件", "这个双击事件己收到", TrayIcon.MessageType.WARNING); mainFrame.main.setVisible(true); } }; trayIcon.addActionListener(al); try { tray.add(trayIcon); isCreated=true; } catch (AWTException e) { System.err.println("无法创建托盘:"+e); isCreated=false; } } return isCreated; } /** *创建这个tray上的右键弹出式菜单 */ public PopupMenu createPopup(){ PopupMenu popup = new PopupMenu(); MenuItem menuExit = new MenuItem("退出"); MenuItem menuSync = new MenuItem("数据同步"); //创建退出菜单监听器 ActionListener exitListener = new ActionListener() { public void actionPerformed(ActionEvent e) { System.exit(0); } }; //创建打开监听器 ActionListener syncListener = new ActionListener() { public void actionPerformed(ActionEvent e) { new datasync(mainFrame.main,true).setVisible(true); } }; menuExit.addActionListener(exitListener); menuSync.addActionListener(syncListener); popup.add(menuSync); popup.add(menuExit); return popup; } private CreateTray(){}; private static CreateTray ct=null;} 我 blog 里有一个例子,可以参考下:http://blog.csdn.net/mq612/archive/2007/01/03/1473055.aspx JNI & VC++(MFC) 可以做 java1.6可以实现。很简单,自己艘一下吧 怎么验证float和char的取值范围 解析JAVA中常见异常类型与原因 做个网页游戏工具的进来帮忙 关于素数优化算法!30万内或更多,哪种算法最快! [求助]如何在Java中显示Video JAVASCRIPT问题 在JBuilder中查询SQL中的表并显示出来,请问语句怎么写呀!急,谢谢! 聊天雏形模型问题 说啥也不能接收到信息了 J2SE 没有想通!大伙帮忙看看!谢谢了! Error loading class classname : wrong name, 帮忙!!!急!!看下错在哪? 问一个关于System.exit(0)作用的问题
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import system.datasync;
/**
*使java application生成托盘图标的例子
*本代码在JDK1.6上,Win2003平台上测试通过
*@author:NetJava.org
*/
public class CreateTray {
/**创建单实列*/
public static CreateTray instance(){
if(null==ct){
ct=new CreateTray();
}
return ct;
}
//测试
public static void main(String[] args) {
CreateTray ct =instance();
//工作目录下使用的tray图标文件
String iconFileName="netjava.gif";
PopupMenu pop=ct.createPopup();
if(!ct.CreteTrayIcon(iconFileName,"我的托盘",pop)){
System.out.println("不能创建托盘");
}
}
/**
*创建tray,如成功返回true值
*@para trayImage:创建tray图标的图片文件名
*@para trayName:tray显示名字
*@para popup 这个tray上的PopupMenu
*/
public boolean CreteTrayIcon(String trayImage,String trayName,PopupMenu popup){
boolean isCreated=false;
final TrayIcon trayIcon;
if (SystemTray.isSupported()) {
SystemTray tray = SystemTray.getSystemTray();
Image image = Toolkit.getDefaultToolkit().getImage(getClass().getResource(trayImage));
trayIcon = new TrayIcon(image, trayName, popup);
trayIcon.setImageAutoSize(true);
//创建一个Action监听器:左键双击事件
final ActionListener al = new ActionListener() {
public void actionPerformed(ActionEvent e) {
//trayIcon.displayMessage("托盘事件", "这个双击事件己收到", TrayIcon.MessageType.WARNING);
mainFrame.main.setVisible(true);
}
};
trayIcon.addActionListener(al);
try {
tray.add(trayIcon);
isCreated=true;
} catch (AWTException e) {
System.err.println("无法创建托盘:"+e);
isCreated=false;
}
}
return isCreated;
}
/**
*创建这个tray上的右键弹出式菜单
*/
public PopupMenu createPopup(){
PopupMenu popup = new PopupMenu();
MenuItem menuExit = new MenuItem("退出");
MenuItem menuSync = new MenuItem("数据同步");
//创建退出菜单监听器
ActionListener exitListener = new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
};
//创建打开监听器
ActionListener syncListener = new ActionListener() {
public void actionPerformed(ActionEvent e) {
new datasync(mainFrame.main,true).setVisible(true);
}
};
menuExit.addActionListener(exitListener);
menuSync.addActionListener(syncListener);
popup.add(menuSync);
popup.add(menuExit);
return popup;
}
private CreateTray(){};
private static CreateTray ct=null;
}