Java - 关闭框架

发布于 2024-12-04 16:06:43 字数 231 浏览 1 评论 0原文

从第一帧开始,我调用另一个框架:

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

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

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

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

From first frame I call another frame:

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

but when I'm trying to close in the same way - no reaction

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

All that I do using two buttons on first frame

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

眼角的笑意。 2024-12-11 16:06:43
frame2 fr2 = new frame2();
fr2.setVisible(false);

通过这种方式,您正在创建一个新的frame2实例并将其隐藏,并且您没有对已经创建的frame2实例执行任何操作,因此没有反应

您应该做的是创建一个类字段或类似于保存对您首先创建的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. 
        ...

    }

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

by this, you are creating a new instance of frame2 and hiding it and you are not doing anything to the frame2 instance that you have already created and hence no reaction

What you should do is create a class field or something similar to hold reference to the instance of frame2 you create at first (when you show it) and then use the same reference and call 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. 
        ...

    }

}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文