Calling Method
public void callingMethd(){
jbutoon.addActionListener( new ListenToSave(p));//execute on some event
//want to use updated p here.but the thing is after we add call listen to save,compononet //added in ListenToSave class wont reflect back here.I guess some problem with reference
}
public class ListenToSave implements ActionListener {
JPanel gameMatrixPanel=null;
public ListenToSave(JPanel p){
gameMatrixPanel=p;
}
public void actionPerformed(ActionEvent e) {
gameMatrixPanel.add(//some compononent);
}
}
发生的问题是我想在ListenToSave()获取更新后使用更新的面板p调用方法。但是调用方法没有发生面板的更新。该怎么做
答案 0 :(得分:1)
new ListenToSave(p);
这只是调用ListenToSave的构造函数。所有构造函数都是
gameMatrixPanel=p;
因此,它不会修改面板中的任何内容。
修改面板的内容是
public void actionPerformed(ActionEvent e) {
gameMatrixPanel.add(//some compononent);
}
此方法仅被称为
因此,您的代码并没有多大意义,但我真的不知道您的实际意图是什么,因此很难提供解决方案。
目前,我建议您阅读swing tutorial on events and listeners,因为您似乎还没有抓住这个概念。