干杯,小伙子。
我目前站在一个小问题面前,但它确实让我感到疯狂,我无法修复它。
我的第一个错误是使用我的main-JFrame作为主类。 你会明白为什么这是(我能够判断)以后的问题......
现在我从main-class-main-JFrame打开一个新的JFrame,只要打开新的JFrame,我就想禁用它。
我已经阅读了很多关于使用JDialog执行此操作的内容,但我还没有设法找到解决方案而无需重新设计整个子JFrame。
只要打开subJFrame,是否有一种简单的方法可以禁用mainJFrame? 类似的东西:
JFrame subframe = new GUI_subJFrame(<params>);
this.disable();
subframe.onClose(this.enable());
我知道这很糟糕而且不存在源代码,但我想让我的想法清晰,准确。
答案 0 :(得分:3)
我刚刚将“subJFrame”从JFrame
更改为JDialog
,并将以下行添加到构造函数中:
this.setModalityType(DEFAULT_MODALITY_TYPE);
它工作得很好,并没有乍看之下那么复杂。
感谢大家的帮助。
答案 1 :(得分:-1)
使用frame.dispose();
关闭相框