白起不得其解,弄了个最小化的类,为什么在eclipse下面能编译运行,打包成JAR就运行不了了???
最近在研究最小化的使用,于是自己一直在弄。终于修正了所以错误eclipse下面能编译运行了,打包成JAR就运行不了了???
果断上图
在eclipse下
按下按钮之后
然而打包成JAR后,按下按钮就没反应了
请问这到底是为什么?
附代码
import javax.swing.*;
import java .awt . *;
import java .awt . event . * ;
class TrayTest
{
private TrayIcon trayIcon = null;
private SystemTray tray = null;
JFrame f1;
public static void main(String[] args) {
new TrayTest();
}
public TrayTest(){
f1 = new JFrame("TrayTest");
f1.setSize(500, 500);
f1.setVisible(true);
f1.setDefaultCloseOperation ( JFrame.EXIT_ON_CLOSE ) ;
Button b = new Button("Minimize");
f1.add(b, "North");
b.addMouseListener ( new MouseAdapter () {
public void mouseClicked ( MouseEvent e ) {
try {
tray.add(trayIcon); // 将托盘图标添加到系统的托盘实例中
f1.dispose(); // 使窗口不可视
} catch (AWTException ex) {
ex.printStackTrace();
}
}
}) ;
if (SystemTray.isSupported()) { // 如果操作系统支持托盘
this.tray();
}
}
public void tray() {
tray = SystemTray.getSystemTray();
ImageIcon icon = new ImageIcon(this.getClass().getResource("/")
.getPath()
+ "123.gif");
PopupMenu pop = new PopupMenu(); // 构造一个右键弹出式菜单
MenuItem show = new MenuItem("打开程序");
MenuItem exit = new MenuItem("退出程序");
pop.add(show);
pop.add(exit);
trayIcon = new TrayIcon(icon.getImage(), "TEST", pop);
/**
* 添加鼠标监听器,当鼠标在托盘图标上双击时,默认显示窗口
*/
trayIcon.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
if (e.getClickCount() == 2) { // 鼠标双击
tray.remove(trayIcon); // 从系统的托盘实例中移除托盘图标
f1.setExtendedState(JFrame.NORMAL);
f1.setVisible(true); // 显示窗口
f1.toFront();
}
}
});
show.addActionListener(new ActionListener() { // 点击“显示窗口”菜单后将窗口显示出来
public void actionPerformed(ActionEvent e) {
tray.remove(trayIcon); // 从系统的托盘实例中移除托盘图标
f1.setExtendedState(JFrame.NORMAL);
f1.setVisible(true); // 显示窗口
f1.toFront();
}
});
exit.addActionListener(new ActionListener() { // 点击“退出演示”菜单后退出程序
public void actionPerformed(ActionEvent e) {
System.exit(0); // 退出程序
}
});
}
} 最小化 eclipse JAR --------------------编程问答-------------------- --------------------编程问答-------------------- 把出错信息转存到文件里看看 --------------------编程问答-------------------- 你打jar 包的方法有问题吧,要设置入口类的
补充:Java , Java SE