java吧 关注:1,288,209贴子:12,814,042
  • 1回复贴,共1

谁帮帮新手啊,一个小问题

只看楼主收藏回复

我用AWT事件做一个窗口,但是开始不能用右上角那个叉叉关闭。
我加了一段程序
class MyWindowListener implements WindowListener
{
    public void windowClosing(WindowEvent e)
     {
        System.out.println("我退出了!");
        e.getWindow().setVisible(false);
        ((Window)e.getComponent()).dispose();
        System.exit(0);
     }
public void windowActivated(WindowEvent e){}
public void windowClosed(WindowEvent e){}
public void windowDeactivated(WindowEvent e){}
public void windowDeiconified(WindowEvent e){}
public void windowIconified(WindowEvent e){}
public void windowOpenen(WindowEvent e){}
}
但是主程序是
public class Login
{   public static void main(String arg[])
     {
        Frame f = new Frame("..是你爸爸");
        f.setSize(280,150);
        f.setLayout(null);    
        Button b = new Button("我是你爸爸");
        b.setBounds((f.getWidth()-100)/2,(f.getHeight()-50)/2,100,50);
        f.add(b);
        f.setBackground(Color.lightGray);
        f.setVisible(true);
     }
我给文件命名的时候应该命名成啥才能运行呢?
我试着用主函数Login.java命名了,但是不行。
求帮助啊



1楼2010-04-11 20:05回复
    你的窗口都没有添加WindowListener监听器,你的两个类联系不起来,还有就是根本不关文件名的事,文件名是Login.java就对了,修改过的代码自己看:
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    class MyWindowListener implements WindowListener
    {
         public void windowClosing(WindowEvent e)
          {
             System.out.println("我退出了!");
             e.getWindow().setVisible(false);
             ((Window)e.getComponent()).dispose();
             System.exit(0);
          }
    public void windowActivated(WindowEvent e){}
    public void windowClosed(WindowEvent e){}
    public void windowDeactivated(WindowEvent e){}
    public void windowDeiconified(WindowEvent e){}
    public void windowIconified(WindowEvent e){}
    public void windowOpened(WindowEvent e){}
    }
    public class Login
    {    public static void main(String arg[])
          {
             Frame f = new Frame("..是你爸爸");
             f.setSize(280,150);
             f.setLayout(null);    
             Button b = new Button("我是你爸爸");
             b.setBounds((f.getWidth()-100)/2,(f.getHeight()-50)/2,100,50);
             f.add(b);
             f.setBackground(Color.lightGray);
             f.setVisible(true);
    f.addWindowListener(new MyWindowListener());
          }
    }


    IP属地:广东2楼2010-04-11 23:35
    回复