java - 退出两个 JFrame 之一同时退出两个 JFrame

标签 java swing jframe jpanel

我有两个独立的 JFrame,但是当我单击一个 JFrame 右上角的 X 时,它也会从另一个 JFrame 中退出。我在底部附近有一个“退出”按钮来执行 setVisible(false),但我仍然倾向于使用 x 按钮。我该如何做才能使其不会从整个项目中取消?

另外,我如何才能使第二个 JFrame 锁定另一个 JFrame,直到第二个 JFrame 关闭,就像弹出消息的工作原理一样

最佳答案

不要给你的 GUI 两个 JFrame。理想情况下,GUI 应该只有一个 GUI。如果需要一个单独的窗口,那么将其设置为一个对话框,例如 JDialog,就不会发生这种情况。

Also, how would i make it so that the second JFrame locks out of the other JFrame untill the second JFrame is closed, like how a popup message works

您完美地描述了模态 JDialog 或 JOptionPane 的行为。只需使用它们即可。

稍后我们将讨论使用 CardLayouts 在单个 GUI 中交换 View 。

<小时/>

编辑,您声明:

Im using Netbeans form editor to create them faster but I only see JFrame and JPanel. Can I edit them in Netbeans? I'd rather not do them through scratch Java

您谈到了我的另一个热心信念,即这是在学习库时不使用代码生成器的另一个原因,因为人们可能会过于依赖代码生成器,这会阻止人们学习库。我强烈建议您放弃代码生成工具并引用教程和 API 手动创建。然后当你更加熟悉这个库时,一定要使用这个工具。顺便说一句,这里对您直接问题的回答是让您的 GUI 创建 JPanel,然后在您想要的位置和方式使用这些 JPanel - 在 JFrame、JDialogs、JOptionPanes 中,或者在 CardLayouts、JTabbedPanes 中交换,或者嵌套在其他 JPanel 中,...等等...

关于java - 退出两个 JFrame 之一同时退出两个 JFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16600505/

相关文章:

java - 在 Android 上从 cocos2d-x Activity 切换到另一个 Activity 时应用程序崩溃

java - 如何使用 MongoDB Java 3 查询 "contains"?

java - 改造 2.0 java.lang.IllegalStateException : Expected BEGIN_ARRAY but was STRING

java - 在 FoxPro 应用程序中粘贴后,从 JTextArea 复制的文本编码已损坏

java - 如何在我的图形用户界面中绘制准确的行数?

java - 为什么我不能写 ch=ch+1;而不是 ch++;尽管它们具有相同的含义

Java Swing - Jlabel ActionListener 不会打印选定的复选框

java - GUI 没有出现在 IntelliJ IDEA 中

java - 从 JFrame 监听内部 JPanel 上的操作

java - 如何使 JPanel 动态化?