Wie kann ich MouseListener in Java vorübergehend machen? Sagen, ich habe:Java MouseListener transient
public class PanelClass extends JPanel implements Serializable{
private int w;
private int h;
public PanelClass(int w, int h){
this.w = w;
this.h = h;
this.setSize(w, h);
this.setBounds(0, 0, w, h);
}
}
public class MainPanel extends JPanel implements Serializable{
public MainPanel(){
setSize(500,500);
}
}
public class MyClass implements MouseListener, Serializable{
private ArrayList<PanelClass> panels = new ArrayList<>();
private MainPanel mp = new MainPanel();
for(PanelClass panel : panels){
panel.addMouseListener(this);
mp.add(panel);
}
private void serialize(){
//SERIALIZE MainPanel
}
}
Nun, wenn ich will Mainpanel serialisiert wird eine Fehlermeldung über Gridlayout nicht Serializable zurück.
Wenn ich den MouseListener nicht zum Panel hinzufüge, alles OK; wird serialisieren.
Ich frage mich, ob dieser MouseListener als vorübergehend festgelegt werden kann, und wie?
Vielen Dank.
Ich bin verwirrt. Sie möchten den 'MouseListener' nicht serialisieren; aber der einzige "MouseListener" ist hier die Klasse, die Sie zu serialisieren versuchen, 'MyClass'. –
Sorry, war ein schlechtes Beispiel. Ich bearbeite die Frage/den Code, hoffentlich wird dieses Beispiel besser ... –