【问题标题】:How to close the Jframe without closing other frames Netbeans如何在不关闭其他框架的情况下关闭 Jframe Netbeans
【发布时间】:2014-06-04 09:31:34
【问题描述】:

因此,当我单击 X 按钮时,整个程序将关闭,但我只想关闭要关闭的框架,我正在使用 Net beans。 我无法弄清楚谷歌说要添加关闭事件,但我看到 X 按钮已经存在。怎么办?

【问题讨论】:

  • 你的代码是什么?还是都是 Net Beans 产生的行为?
  • 这与Netbeans无关。
  • 我正在创建一个用于库存管理的程序,其中我有 3-4 个框架,但是当我关闭任何其他框架时,主框架也会关闭。
  • netbeans自己生成的代码所以我只想关闭一个单帧而不是程序怎么办?
  • 我不知道我只想关闭当前帧而不是整个程序。

标签: java swing


【解决方案1】:

在我要关闭的 Jframe 的属性中找到 defaultCloseOperation 设置为 EXIT_ON_CLOSE 我将其设置为 Dispose。

【讨论】:

  • 正如我在回答中所建议的那样。这仍然不是正确的解决方案。如果您不相信我,请查看:The Use of Multiple JFrames, Good/Bad Practice? 了解更多信息。
  • @camickr 我知道这不是正确的方法,但无论如何谢谢:)
【解决方案2】:

我正在创建一个有 3-4 帧的库存管理程序

一个应用程序应该只有一个 JFrame。

如果您需要子窗口,请使用JDialog。关闭对话框时不会关闭主 JFrame。

但是,有关 JFrame 的信息,请查看 setDefaultCloseOperation(...) 方法。默认是“隐藏”框架。因此,如果您的应用程序正在退出,那么这意味着您可能在代码中的某处使用了 System.exit(...) 方法,而您不应该这样做。

【讨论】:

  • 我已经创建了框架,程序几乎完成了,只剩下两件事关闭另一个框架而不关闭程序和另一件事。
  • 我没有在任何地方使用 System.exit。我正在使用框架上的 X 按钮,该按钮已经存在,但我没有编程。
  • @user3551620,所以除了类名之外,JDialog 与 JFrame 相同。更改代码需要一分钟。没有像现在这样学习如何正确设计应用程序的时间了。这是一个小改动。
  • 嗯,但我想关闭框架而不是程序。
  • @user3551620, I am not using System.exit anywhere,你读过我提到的方法的 API 吗?生成的代码是否使用该方法? Umm but i want to close the frame not the program - 这就是为什么你应该使用 JDialog 而不是 JFrame。默认行为是在您单击“X”按钮时关闭对话框。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-09-12
  • 1970-01-01
  • 1970-01-01
  • 2012-01-01
  • 1970-01-01
  • 2021-10-10
  • 1970-01-01
相关资源
最近更新 更多