Muchas gracias por responder.
La verdad es que estoy tratando de hacer el juego de la "Snake" (
lo he visto como reto en la sección C++, en donde usan las bibliotecas SDL y Allegro, pero quiero intentarlo con Java en modo GUI usando los JFrame, de paso que aprendo sobre este lenguaje, que lo llevaré como curso el ciclo entrante).
Como aún no he avanzado mucho quiero probar antes cómo serían las funciones para agregar un JLabel y que se muestre (esto sería cuando se ha "comido" un objeto determinado y la Snake debe crecer).
Este es el código que he escrito referente a ello:
private void formWindowOpened
(java.
awt.
event.
WindowEvent evt
) { ArrayList<javax.swing.JLabel> Bloques = new ArrayList<>();
Bloques.
add( new javax.
swing.
JLabel("/SnakePackage/imgs/body.gif") ); MyMain.add(Bloques.get(0));
Bloques.get(0).setLocation(0, 0);
}
No estoy totalmente seguro, pero me parece que esta función se activa una sola vez cuando se inicia el programa.
Estoy creando un ArrayList para almacenar allí los JLabel que se vayan creando. Estos JLabel en realidad no contienen texto y son una imagen muy pequeña (10x10px me parece).
Hasta antes conseguía que un JLabel con la misma imagen se moviera (derecha, izquierda, arriba, abajo) según se presionen las teclas correspondientes y allí cambiaba la posición con setLocation(x, y).
El error me dice que un método non-static no puede ser referenciado de un contexto static. ¿Cómo es eso?
Bueno, MyMain es el nombre que le puse al JFrame cuando lo agregué al paquete, pero al parecer no es un JPanel (¿es necesario que cree uno?):
public class MyMain
extends javax.
swing.
JFrame