class F1 extends JFrame{
   JButton jb1;
   .........
   .........
   jb1.addActionListener(new ActionListener(){
      public void actionPerformed(ActionEvent e){
         new F2().show();
      }
   });
}class F2 extends JFrame{
 ............
 public F2(final F1 f1){
    addWindowListener(new WindowAdapter(){
       public void windowOpened(WindowEvent e){
          f1.jb1.setEnabled(false);
       }
       public void windowClosed(WindowEvent e){
          f1.jb1.setEnabled(true);
       }
    });
 }}

解决方案 »

  1.   

    这个方法我试了,可是不能实现。当按下button时,产生一个新的窗体frame2,但是button还是可以用的,在按一次button还是会产生一个frame,并且也没有使button的enable变为true。
    我是这样做的:
    void jBClaAdd_actionPerformed(ActionEvent e) {
        jBClaAdd.setEnabled(false);
        ClassAdd  classAdd = new ClassAdd();
        classAdd.setVisible(true);
      }
    这时classAdd就产生了,可是我不知道怎么在classAdd被关掉后是jBClaAdd的enable变为true?