import java.awt.Toolkit; 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.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.WindowConstants; import java.sql.*;import java.io.*;
import net.sourceforge.jtds.jdbc.Driver;import java.util.Timer;import java.util.TimerTask;
import java.util.*;
import java.awt.*;
import javax.swing.*;public class TrayIconAdvanced extends JFrame { private TrayIcon ti; public static void main(String[] args) { AnnoyingBeep aaa=new AnnoyingBeep();
aaa.AnnoyingBeep();
}
public TrayIconAdvanced() { setDefaultCloseOperation(WindowConstants.HIDE_ON_CLOSE); this.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { if (SystemTray.isSupported()) { setVisible(false); minimizeToTray(); } else { System.exit(0); } } }); JPanel root = new JPanel();
//JLabel label=new JLabel("您有新消息,请查收!");
JButton exitButton = new JButton("您有新消息,请查收!");
exitButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) { try {
Process p = Runtime.getRuntime().exec(
"cmd.exe /c start http://www.sina.com.cn");
p.waitFor();
}
catch (Exception ae) {
System.out.println(ae.getMessage());
} SystemTray tray = SystemTray.getSystemTray(); try { tray.add(ti); } catch (AWTException ce) { System.err.println(ce); } //System.exit(0); //退出系统托盘
} }
); root.add(exitButton); getContentPane().add(root); pack(); initTi(); } private void initTi() { Image image = Toolkit.getDefaultToolkit().getImage( this.getClass().getResource("TrayIcon.png"));
//this.getClass().getResource("1.gif")); PopupMenu popupTi = new PopupMenu(); MenuItem showItem = new MenuItem("Show"); ActionListener showListener = new ActionListener() { public void actionPerformed(ActionEvent e) { setVisible(true); SystemTray.getSystemTray().remove(ti); } }; showItem.addActionListener(showListener); popupTi.add(showItem); ti = new TrayIcon(image, "TrayIcon", popupTi); ti.addActionListener(showListener); } public void minimizeToTray() { SystemTray tray = SystemTray.getSystemTray(); try { tray.add(ti); } catch (AWTException e) { System.err.println(e); } } }
class AnnoyingBeep {
Toolkit toolkit;
Timer timer;
public void AnnoyingBeep() {
toolkit = Toolkit.getDefaultToolkit();
timer = new Timer();
timer.schedule(new RemindTask(), 0,1*10000);
} class RemindTask extends TimerTask {
//int numWarningBeeps = 3;
public void run() {
int a=3;
int b=3+3;
if(b==6){
JEditorPane editor = new JEditorPane();
try {
editor.setContentType("text/html; charset=gb2312");
// editor.read(new FileReader(new File("readme.html")),null);
editor.setPage("file:"+new File("readme.html").getAbsolutePath());
}
catch (Exception ex) {
ex.printStackTrace();
}
try{
Runtime rt=Runtime.getRuntime();
rt.exec("www.baidu.com");
}
catch(Exception d){
} TrayIconAdvanced frame = new TrayIconAdvanced(); frame.setTitle("TrayIconAdvanced"); frame.setVisible(true); frame.setSize(200, 65); frame.setLocation(300, 200);
try{
Thread.sleep(50000);
}catch( InterruptedException exc){
} // frame.setVisible(false);
}else{
System.out.println("");
} }
} }
在程序执行的时候,点击按钮,弹出网页,关闭窗体,而整个程序不退出?
试试this.close();
TrayIconAdvanced.java:114: 找不到符号
符号: 方法 close()
this.close();
dispose();
也是关不掉窗体;和原来的一样;
2.this.close();关闭本窗口!
(要关哪个在哪个代码里写)