我一直在Netbeans中使用JButton
在Java中打开一个子JFrame
。
我希望原始父框架不要处置,但要在子框架后面禁用。因此,执行按钮操作(打开子框架)的代码是:
this.setEnabled(false);
new Child().setVisible(true);
好的,一切都很好。我的意思是子框架打开了,但问题是当我试图关闭它时。我希望子帧不可见(未禁用),但要再次启用原始父帧。我已经将默认关闭操作设置为DO_NOTHING_ON_CLOSE
,我尝试使用它:
this.dispose();
Parent.setEnabled(true);
然而,这显然不起作用。我已经读过我需要在主类中进行一些操作,或者我应该使用对话框而不是另一个子框架,但我不熟悉它们。您能否建议哪种解决方案对我在Netbeans中的工作更有效,并提供一些指导原则?
答案 0 :(得分:0)
有一些不同的解决方案,但我用这个
儿童班
public class Child extends javax.swing.JFrame {
JFrame parent;
public Child(JFrame parent) {
initComponents();
this.parent = parent;
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
dispose();
parent.setEnabled(true);
}
父类按钮
private void btnOpenActionPerformed(java.awt.event.ActionEvent evt) {
this.setEnabled(false);
new Child(this).setVisible(true);
}