【问题标题】:I want to save changes I made on a jframe before I dispose it我想在处置之前保存我在 jframe 上所做的更改
【发布时间】:2021-09-09 06:25:03
【问题描述】:

我有一个能够打开另一个 jframe 的主 Jframe 类。当我 dispose() 第 2 帧,返回主帧并再次打开第 2 帧时,我所做的更改没有保存(例如添加按钮、标签和后端代码中的更改)。如何保留我所做的更改?

【问题讨论】:

  • 你必须处理第二帧吗?不能隐藏吗?
  • 听起来您正在使用框架的多个实例。您“可以”以某种方式保存状态并在每次创建窗口时重新加载它,但这假设您永远不会拥有一个以上的活动实例。您“可以”在创建第二个框架后维护一个对第二个框架的活动引用,并简单地使其再次可见。您使用哪种取决于您想要的结果

标签: java swing user-interface


【解决方案1】:

JFrame 具有默认的关闭操作 HIDE_ON_CLOSE,因此保留此默认设置,当需要第二个窗口时将其重新设置为可见。
要在 JFrame 状态更改时执行必要的操作,您应该实现 WindowAdapter:

secondFrame.addWindowListener(new WindowAdapter() {
    public void windowClosing(WindowEvent e) {
        // actions you want to perform 
    }
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-17
    • 2011-06-25
    • 2021-01-23
    • 2018-01-14
    相关资源
    最近更新 更多