要使用你自己写的类,就new一个你自己的类,产生对象就可以用了
Frame1 frame = new Frame1();

解决方案 »

  1.   

    不行阿,上午的那个问题还没解决,郁闷死了,当到了frame()里面的时候就不行了把
    this后面必须有点,如this.*****
    直接用this到了frame()里面就不认了.
      

  2.   

    你的想法不对在自己的构造函数引用自己,有什么用?用这个类产生一个窗口 ,在main方法中new 一个 这个类就可以了如class a ,b 都extends Frame想在a中打开b ,在b中控制a  ,  则在a中 new b(af) 即可,就可在b中控制a
                                              ~~a的实例 b 构造函数public b(a as){
       ...........
    }
      

  3.   

    我现在详细的叙述一下问题:
    建立了三个java文件:
     Application1.java,Frame1.java,Frame2.java
    在Application1.java中包括main函数,
    在main函数中我Frame1 fr=new Frame1();从而建立了一个新的窗口
    在这个新的窗口中有一个按钮,在按钮的时间处理中,我加上了
    ********Frame2 fr=new Frame2(参数);**************
    从而new了一个新的窗口.
    现在Frame2中有一个按钮,我想通过按这个按钮关闭Frame1窗口.
    按你的说法,Frame2的构造函数带一个Frame1参数
    但是上面的那个语句(打星号)是窗口一按钮的事件处理,必然也在Frame1的构造函数中
    在构造函数中怎样写这个参数呢?
      

  4.   

    import java.awt.*;
    import java.awt.event.*;public class qw extends Frame
    {
       Button b2; public qw()
    {
       setLayout(new FlowLayout());
       
       b2 = new Button("NEW");
       b2.addActionListener(new ActionListener(){
          public void actionPerformed(ActionEvent e){ 
             f1 q = new f1();
             q.show();
             b2.setEnabled(false);
          } 
       });
       add(b2);
    this.addWindowListener (new WindowAdapter(){
    public void windowClosing(WindowEvent e){
    dispose();
    System.exit(0);
    }
    });
    }

    public static void main(String args[])
    {
    System.out.println("Starting App");
    qw f = new qw();
    f.setSize(100,100);
    f.show();
    }
    }class f1 extends Frame
    {
       static f1 f;
       Button b2; public f1()
    {
       setLayout(new FlowLayout());
       f = this;
       setSize(200,200);
       b2 = new Button("NEW");
       b2.addActionListener(new ActionListener(){
          public void actionPerformed(ActionEvent e){ 
             f2 q = new f2(f);
             q.show();
             b2.setEnabled(false);
          } 
       });
       add(b2);
    this.addWindowListener(new WindowAdapter(){
    public void windowClosing(WindowEvent e){
    dispose();
    System.exit(0);
    }
    });
    }

    }class f2 extends Frame
    {
       
       Button b2;
       
    public f2(final f1 f)
    {
       setSize(200,200);
       setLayout(new FlowLayout());
       
       b2 = new Button("close f1");
       b2.addActionListener(new ActionListener(){
          public void actionPerformed(ActionEvent e){ 
             f.hide();
             f.dispose();
             b2.setEnabled(false);
          } 
       }); 
              
       add(b2);
    this.addWindowListener (new WindowAdapter(){
    public void windowClosing(WindowEvent e){
    dispose();
    System.exit(0);
    }
    });
    }

    public static void main(String args[])
    {
    System.out.println("Starting App");
    qw f = new qw();
    f.setSize(100,100);
    f.show();
    }
    }