Básicamente lo que quiero hacer es obtener un botón de inicio para iniciar un método ejecutándose en otra clase y actuando sobre otro objeto.Java: Usar un actionlistener para llamar a una función en otra clase en un objeto de esa clase
Mi código para el oyente:
button1a.addActionListener(new ActionListener() {
public void actionPerformed (ActionEvent event) {
// Figure out how to make this work
//sim.runCastleCrash();
}
});
Mi código para la otra clase:
public static void main(String[] args) {
CastleCrash sim;
sim = new CastleCrash();
}
y
public void runCastleCrash() {
System.out.println("Castle Crash is beginning...");
//Other method parts here to be added
}
tengo la sensación de que esto no puede ser demasiado duro , pero me falta una pieza.
¿Qué errores está obteniendo? ¿Está la variable 'sim' incluso en el alcance cuando intenta agregar actionListener al botón? Un error típico es que las variables deben ser definitivas para poder acceder a ellas desde una clase interna anónima, como su ActionListener. –
me sale el error: Excepción en el hilo "principal" java.lang.Error: no resuelto problema de compilación: \t SIM no se puede resolver Creo que tienes razón en que es un problema sim no estar en el ámbito de aplicación, pero no puedo entender cómo hacerlo definitivo ... – Myles
Ver la respuesta de McDowell, eso es lo que respondería. –