我有两个独立的 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/