所以我有这段代码:
public class TabTaches extends JPanel {
//TabTaches Variables
TabTaches() {
// Constructor content
}
private class NouvelleTache extends JFrame {
// Nouvelle Tache Variables
NouvelleTache() {
ecouteur = new Ecouteur();
this.setTitle("Nouvelle tache");
this.setSize(300, 200);
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLayout(new GridLayout(3, 2));
annuler = new JButton("Annuler");
annuler.addActionListener(ecouteur);
this.add(annuler);
}
}
private static class Ecouteur implements ActionListener {
NouvelleTache nt;
public void actionPerformed(ActionEvent e) {
if(((AbstractButton)e.getSource()).getText().equals("Annuler")) {
Something.dispose();
}
}
}
}
我不知道如何管理Something.dispose();
我知道您可以使用TabTaches.this.dispose();
访问外部类,但我想要关闭的是NouvelleTache
。有办法吗?
它在语法上是否正确,还是应该为NouvelleTache
创建一个完整的类?我想把它作为内部类,因为我只需要它进入TabTaches
,但也许我在这里太复杂了。
你能帮助我吗?
感谢。
答案 0 :(得分:0)
我通过分离外部类和内部类的监听器来解决它,这样我就可以使用上面描述的方法访问我的nt实例TabTaches.this.dispose();
我不确定这是否正确,但它确实有效。