Hallo,
ich habe das Problem mal vereinfacht und Code weggelöscht. Beim Kompilieren bekomme ich den Fehler "Cannot find Symbol" innerhalb der Klasse des ActionListeners beim Aufruf von canvas.repaint(). Warum kennt der hier canvas nicht? Oben im Konstruktor habe ich doch diese Instanz angelegt?!
Ausserdem habe ich das Problem, dass ich auf aktFunktion durch die Paint Methode der Canvas Klasse zugreifen will. Das das nicht geht (lokale Variable von CFenster) ist mir klar, wie kann ich aber trotzdem auf aktFunktion zugreifen?
Der Quellcode is generell schon ziemlich lang, von daher verlier ich als Anfänger auch langsam den Überblick. Hoffe es kann mir jemand helfen, sonst häng ich hier echt fest :/
Gruß
Revenant
ich habe das Problem mal vereinfacht und Code weggelöscht. Beim Kompilieren bekomme ich den Fehler "Cannot find Symbol" innerhalb der Klasse des ActionListeners beim Aufruf von canvas.repaint(). Warum kennt der hier canvas nicht? Oben im Konstruktor habe ich doch diese Instanz angelegt?!
Code:
//die Klasse des Fensters
class CFenster extends JFrame {
public int aktFunktion = 0;
//der Konstruktor...
CFenster (String titel) {
//...
CCanvas canvas = new CCanvas();
add(canvas);
//...
}
//die Ereignisbehandlung
class CActionListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
//...
canvas.repaint();
}
}
}
//später kommt dann die Canvas Klasse, wo ich noch auf aktFunktion zugreifen will
Ausserdem habe ich das Problem, dass ich auf aktFunktion durch die Paint Methode der Canvas Klasse zugreifen will. Das das nicht geht (lokale Variable von CFenster) ist mir klar, wie kann ich aber trotzdem auf aktFunktion zugreifen?
Der Quellcode is generell schon ziemlich lang, von daher verlier ich als Anfänger auch langsam den Überblick. Hoffe es kann mir jemand helfen, sonst häng ich hier echt fest :/
Gruß
Revenant