就是使用JButton,点击这个按钮,这个所在窗口就关闭了,在线等
这个的事件是什么,最好有简单的例子

解决方案 »

  1.   

    就是相当于CLOSE()这个事件的
      

  2.   

    忘了说了,关闭窗口,但还是要保证其他程序仍在运行,估计System.out()不能用,dispose(); 好象也用不来~
      

  3.   

    setVisible(false);这个只是不可见吧??不过还是要谢谢:)又碰上个麻烦,按键事件方面
    我想把事件和对象分开写,于是就 //cb.addActionListener(this); 但是去掉注释就编译错误import javax.swing.*;
    import java.awt.*;
    import javax.swing.border.*;
    import com.bruceeckel.swing.*;
    import javax.swing.event.ListSelectionEvent;
    import java.awt.event.*; public class GUITest02 extends JApplet { //test data 
    private String[] flavors = {
        "Chocolate", "Strawberry", "Vanilla Fudge Swirl",
        "Mint Chip", "Mocha Almond Fudge", "Rum Raisin",
        "Praline Cream", "Mud Pie"
        };
        
    private JList jListtest = new JList(flavors);
    private MyDialog dlg = new MyDialog(null);     public void init() {
          Box bh = Box.createHorizontalBox();
          bh.add(Box.createRigidArea(new Dimension(100, 10)));       bh.add(jListtest);
           
         jListtest.addMouseListener ( new MouseAdapter(){
    public void mouseClicked(MouseEvent a) {
    if(a.getClickCount() == 2) {
    System.out.println (jListtest.getSelectedValue());
            dlg.show(); 
    }
       }
         });
        
         bh.add(Box.createRigidArea(new Dimension(30, 10)));
       JButton cb = new JButton("关闭窗口"); 
        //cb.addActionListener(this); //!!!!!!??????这里出问题了
        bh.add(cb);
        getContentPane().add(bh);
     }
        
    public void actionPerformed(ActionEvent e) //监听处理的方法。
    {
    System.out.println("TEST");
     }

    public static void main(String[] args) {
        Console.run(new GUITest02(), 450, 300); 
        }
    }======================================================给出包里的一个通用类
    //: com:bruceeckel:swing:Console.java
    // Tool for running Swing demos from the
    // console, both applets and JFrames.
    // From 'Thinking in Java, 3rd ed.' (c) Bruce Eckel 2002
    // www.BruceEckel.com. See copyright notice in CopyRight.txt.
    package com.bruceeckel.swing;
    import javax.swing.*;
    import java.awt.event.*;public class Console {
      // Create a title string from the class name:
      public static String title(Object o) {
        String t = o.getClass().toString();
        // Remove the word "class":
        if(t.indexOf("class") != -1)
          t = t.substring(6);
        return t;
      }
      public static void
      run(JFrame frame, int width, int height) {
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(width, height);
        frame.setVisible(true);
      }
      public static void
      run(JApplet applet, int width, int height) {
        JFrame frame = new JFrame(title(applet));
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().add(applet);
        frame.setSize(width, height);
        applet.init();
        applet.start();
        frame.setVisible(true);
      }
      public static void
      run(JPanel panel, int width, int height) {
        JFrame frame = new JFrame(title(panel));
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().add(panel);
        frame.setSize(width, height);
        frame.setVisible(true);
      }
    } ///:~
      

  4.   


    public class GUITest02 extends JApplet=====>public class GUITest02 extends JApplet implements ActionListener
      

  5.   

    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;class BasicButton implements ActionListener
    {
      // 构造方法-------------------------------------------------------------------
      public BasicButton()
      {
        initComponent();
        win.show();
      }
      
      // 覆盖接口ActionListener的回调方法-------------------------------------------
      public void actionPerformed(ActionEvent e)
      {
        String cmd = e.getActionCommand();
        if(cmd.equals(BasicButton.CMD_OK))   // 确认
          JOptionPane.showMessageDialog(win,"你单击了按钮"+BasicButton.BTN_OK);
        if(cmd.equals(BasicButton.CMD_EXIT)) // 退出
        {
          win.dispose(); //关闭窗口
          System.exit(0);
        }
      }
      
      // 生成窗口的组件-------------------------------------------------------------
      private void initComponent()
      {
        win = new JFrame("事件处理例程");
        pane = win.getContentPane();
        pane.setLayout(new GridLayout());
        addButton(BTN_OK,CMD_OK);
        addButton(BTN_EXIT,CMD_EXIT);
        win.setSize(200,100);
      }
      // 在面板上添加按钮-----------------------------------------------------------
      private void addButton(String caption,String cmd)
      {
        JButton b = new JButton(caption);    // b为事件源
        b.setFont(new Font("宋体",Font.BOLD,24));
        b.setActionCommand(cmd);
        b.addActionListener(this);           // 将BasicButton类的对象作为监听器注册给b
        pane.add(b);
      }
      
      private JFrame win;
      private Container pane;
       
      public static final String BTN_OK = "确认";
      public static final String BTN_EXIT = "退出";
      public static final String CMD_OK = "OK";
      public static final String CMD_EXIT = "EXIT";
    }class tester
    {
      public static void main(String[] args)
      {
        new BasicButton();
      }
    }
      

  6.   

    to hujiaboy(撑死你大爷)谢谢了哦,我去试试还有个关闭窗口的代码,有了就结贴