【问题标题】:Java - closing frameJava - 关闭框架
【发布时间】:2014-02-09 06:42:44
【问题描述】:

从第一帧我调用另一个帧:

frame2 fr2 = new frame2();
fr2.setVisible(true);

但是当我试图以同样的方式关闭时 - 没有反应

frame2 fr2 = new frame2();
fr2.setVisible(false);

我在第一帧使用两个按钮所做的一切

【问题讨论】:

    标签: java frame


    【解决方案1】:
    frame2 fr2 = new frame2();
    fr2.setVisible(false);
    

    由此,您正在创建一个新的 frame2 实例并将其隐藏,并且您没有对您已经创建的 frame2 实例做任何事情,因此 no reaction

    您应该做的是创建一个类字段或类似的东西来保存对您最初创建的 frame2 实例的引用(当您显示它时),然后使用相同的引用并调用 setVisible(false)

    class frame1{
        ...
    
        private frame2 frame2ref;
        ....
    
    
        void foo()
        {
           ....
           frame2ref = new frame2();
           frame2ref .setVisible(true);
           // create and save reference and show frame.
           ...
        }
    
        void bar()
        {
            ...
            frame2ref.setVisible(false);
            // retrieve reference and hide frame. 
            ...
    
        }
    
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-21
      • 2012-12-25
      • 2010-09-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-17
      相关资源
      最近更新 更多